巧用Sybase数据库的超级用户密码

发布时间:2005-06-10 00:19:41来源:红联作者:何哥

巧用Sybase数据库的超级用户密码

------声明:如有雷同,纯属巧合

2005-04-06

巧用Sybase数据库的超级用户密码

出处:http://www.pcworld.com.cn/issue/2002/0214/1409b.asp

作者:谢鹏 周晓东

在使用Sybase数据库的过程中,我们经常会遇到Sybase数据库系统上锁的情况,而多数情况下,用户必须通过超级用户身份登录系统,以处理该进程。通常为了保障Sybase数据库系统的安全性,超级用户口令往往掌握在数据库管理员的手中。

当上述情况发生时,如果数据库管理员不在现场或无法通过其他方式进行处理时,口头告知密码虽然可以解决一时的燃眉之急,但数据库系统的安全无疑会受到严重的威胁;而重新启动Sybase数据库系统也是一种解决的方法,不过这种作法很有可能造成数据库中数据的丢失,甚至导致用户数据库的崩溃,不到万不得已,请不要使用此方法。

如果能够对用户权限加以设置,使普通用户也能够进行进程的处理,而又不用知晓Sybase数据库系统的超级用户密码,无疑是处理上述问题的最佳解决方法。现在,笔者就把针对上述情况的整个处理过程详细介绍给大家,以供参考。当然,您可以根据自己的需要设置普通用户密码,也可以限制更多的内容来处理数据库系统中的进程。具体的处理过程如下文所示。

1.使用C语言编写一个程序如下。

#include < stdlib.h>

#include < string.h>

#include < fcntl.h>

#include < time.h>

#include < sys/types.h>

char *passwd() /*普通用户需要的密码: 简单加密后字符串*/

{

struct tm *tp;

long secs;

char *buff;

buff=(char *)malloc(30);

secs=time((long *)0);

tp=localtime(&secs);

sprintf(buff,"%02d%02d%d",tp->tm_mon+1+9,tp->tm_mday+2,8);

return(buff);

}

main()

{

char str1[80],str2[80];

int i;

printf("passwd:");

system("stty -echo"); /* 不显示*/

gets(str1);

system("stty echo");

for(i=3;i< 9;i++)str2[i-3]=str1; /*截取输入6个字符*/

str2[6]='\0';

if (strcmp(str2,passwd() ) ){

printf("passwd error!\n");

exit(1);

}

setuid(0);

system("/sybase/atuo/sybase_kill");

printf("\n");

}

然后进行编译。

#cc c.c -o kill-spid

2.对产生的目标文件设置用户的“s”权限。

#chmod u+s obj-name

3.将目标文件放置在执行用户的任意目录下,例如,tmp目录。

4.执行文件“sybase-kill”应该存放在仅可以允许访问该文件的目录下,并设置其权限。例如,只允许Sybase用户可以进行读写。

# mkdir /sybase/auto

#chmod 700 /sybase/atuo

#chmod g+t /sybase/atuo

#chown sybase:sybase /sybase/atuo

#cd /sybase/atuo

5.sybase-kill文件内容,具体如下。

trap '' 1 2 3 9 15 #设置屏蔽信号,目的是不允许中断产生。

for pid in ` echo "set nocount on \n

select distinct blocked from master..sysprocesses

where blocked>0 \ngo"|isql -Uaaa -Paaaaaa -w200 -SFEBS|sed "1,2d" `

do

echo "Kill "$pid

isql -Usa -w200 -Sserv_name < < EOF

password123321

kill $pid

go

EOF

done

echo "ok"

上述内容会处理所有阻塞的进程,不管是否最终是由它引起的。当然,您也可以找出是谁引起的阻塞,然后再处理该进程,仅仅通过修改其“sybase-kill”文件内容即可完成。

linux修改sybase数据库密码,巧用Sybase数据库的超级用户密码相关推荐

  1. ubuntu18.04设置超级用户密码

    一.root账户 Ubuntu 18.04默认安装后,是没有root账户(超级管理权限)的,想获得root账户登录可以使用以下步骤: 1.首先获得临时的root权限,在终端窗口输入: sudo -s ...

  2. Linux设置超级用户密码

    刚安装好的Linux怎么进root呢,表示安装过很多边,每次都百度,这里直接写下来 安装好后终端中输入sudo passwd,然后输入当前用户密码,接着就可以设置超级用户密码

  3. 管家婆辉煌版7.2版,超级用户密码忘记了

    管家婆辉煌版7.2版,超级用户密码忘记了 解决方法: 进管家婆7.2DATA文件夹, 找到SYSDATA.DBF,打开方式用EXCEL,找到CB列,REP_INPUT项, 把数值清除,保存退出. 再找 ...

  4. 忘记linux里mysql账号密码忘记_Linux下MySQL忘记root用户密码

    今天在接收一台MySQL服务器的时候发现忘记MySQL的root用户的密码,查找资料发了各种文档里面也没有root用户密码,因此需要修改root用户密码. 首先确认服务器出于安全的状态,也就是没有人能 ...

  5. linux 超级用户密码忘了,Linux系统下超级管理员root用户的密码忘记了怎么办?

    一. 背景说明: 我们在日常运维工作中,多多少少都会遇到系统管理员密码忘记了,或是上一个人员离职没有做好交接工作,或是管理密码的表格被误更新了等等可能出现的状况,那么,今天阿龙给大家分享下Linux系 ...

  6. xampp修改mysql密码_XAMPP环境下mysql的root用户密码修改方法_MySQL

    XAMPP 最近有客户忘记了mysql的root用户密码,使用mysqld_safe无法正常启动mysql,也没有办法按照mysql manual中的方法修改root密码. 网页教学网站长注:今天有学 ...

  7. aws ec2 linux 密码,AWS EC2实例Ubuntu系统设置root用户密码并使用root/ubuntu用户登录

    参考链接:http://www.wangchao.info/1137.html  注意:链接中写的简化了,其中重启服务的命令似乎不太适用,可能是不通用,我下面描述的方式亲测可行,如有其他疑问请留言: ...

  8. oracle scott密码忘记,oracle忘记sys/system/scott用户密码的解决方法

    这篇文章主要为大家详细介绍了oracle忘记sys/system/scott用户密码的解决方法,具有一定的参考价值,可以用来参考一下. 感兴趣的小伙伴,下面一起跟随512笔记的小编两巴掌来看看吧! 一 ...

  9. 职称计算机报名密码忘了,忘了WindowsXP超级管理员密码,怎么办

    我把WINXP超级管理员密码给忘了,WINXP中只有一个用户,就是管理员,我把SAM文件给删了,于是WINXP不能启动了,恢复这个文件后就能启动了,并且安全模式也进不去,请问如何去掉密码? 答:在Wi ...

  10. 明文存密码成惯例?Facebook 6 亿用户密码可被 2 万员工直接看

    近日,外媒发布了一份互联网安全的调研报告,报告中称Facebook曾将6亿用户的账号密码使用明文存储,且可以被Facebook内部员工随意搜索查看.据Facebook方面的消息人士称,纯文本存档的用户 ...

最新文章

  1. 几行代码搞定ML模型,低代码机器学习Python库正式开源
  2. [转载]Word直接发布新浪博客(以Word 2013为例)
  3. 华硕服务器如何安装系统安装win7系统,华硕电脑怎么重新安装win7系统
  4. 【Git】将 GitHub 工程设置为私有库 ( 登录账号 | 工程主页 | Settings | Danger Zone | Change visibility | Make private )
  5. 隐马尔科夫模型-EM模型-混合理解
  6. DL之GAN:生成对抗网络GAN的简介、应用、经典案例之详细攻略
  7. Python Django 一对多正向查询示例
  8. 利用lrz、lsz工具在linux与windows之间传输文件
  9. 降低网络拥塞,追求美好体验——对话拍乐云首席科学家章琦
  10. tftp 服务器 ip_360Stack裸金属服务器部署实践
  11. 【卷积码系列3】(n,k,m)卷积码的维特比译码实现(不使用MATLAB库函数)及性能对比(vitdec函数-代码见CSDN同名资源)
  12. vb.net cad 块表最后的实体_21个绘图命令+7个技巧,3分钟让你成为CAD高手
  13. 巧用讯飞TTS进行文本合成语音(LINUX操作系统)
  14. 网络子系统34_网桥设备的传输与接收
  15. 转:SQL Server 2005“错误1706。安装程序找不到需要的文件。
  16. 删除ttf字体文件中无用文字
  17. Linux批量追加文件名后缀
  18. 七大江河水系--黄河(二)
  19. 科沃斯机器人招股_603486_科沃斯招股说明书.pdf
  20. android4.4 音量控制,android4.4调整音量调节速度

热门文章

  1. hadoop 查看集群的网页监控状态
  2. DOS命令:color
  3. PyQt5实现局域网聊天工具
  4. 计算机病毒库更新记录表,计算机病毒库
  5. 2021年危险化学品经营单位安全管理人员试题及解析及危险化学品经营单位安全管理人员模拟考试题
  6. PHP+Flash网页游戏开发 - 基本思路
  7. 32位xp系统识别4G以上内存
  8. Task08 word2vec;词嵌入进阶;文本分类 学习笔记
  9. 2016年我的学习记录与搜索到的网站,将持续更新,主要介绍我在公司应用ecshop的学习记录...
  10. TextBlock/Textbox