咨询:域名主机客服!261689845 建站:网站建设请点我!173022933 推广:网站推广请点我!452936608 销售:域名主机客服309128758 客户体验 | 售后平台 | 代理加盟 | 客户口碑

 

sa被删除或锁住的处理解决方法 - 常见问题 - 南宁巨人网络

国内顶级主机:
初学:100M 200M S100M S200M
大众:300M 500M S300M S500M
成效:600M 800M S600M S800M
国内jsp主机:
专业主机:100M 200M 300M 500M
1000M 2000M 3000M 5000M
G级企业商务大型主机:
商务1G主机 | 商务3G主机
商务10G主机 | 商务20G主机
海外主机:(免备案)
小型企业:200M 300M 500M
大中型企业:1000M 2000M 5000M
 

售前咨询

    我们用心为您服务域名空间导购-世美

    我们用心为您服务域名空间导购-小覃

技术服务

    我们用心为您服务技术服务咨询-龙堂

备案服务

   我们用心为您服务备案服务咨询-独行

上班时间:每周一至周六
上午8:30-下午18:00
sa被删除或锁住的处理解决方法
时间:2012/6/29 19:58:41    来源:南宁巨人网络    浏览次数:1278次
【字体大小:    】    【温馨提示:双击可滚动页面,单击则停止滚动。】

sa被删除或锁住的处理解决方法

基础知识:
master库的syslogins和sysloginroles系统表
syslogins中记录login的信息,但是没有权限信息。几个主要的字段name,status(状态 2锁住,0正常),suid,此表sa_role的login可以操作
sysloginroles中记录login权限信息,suid对应login,srid对应权限(0 sa_role;1 sso_role 具体看syssrvroles表)此表只有具有sso_role的login可以操作,光有sa_role也不行
sa_role系统管理员具有数据库操作的特权,但一些只有sso_role可以完成(授权,添加login,改口令等)
sa被删除或锁住的处理解决方法

先说说被锁住:
正常最后一个sso_role是无法锁住的,如果sa被锁,用ssa_role的login sp_locklogin sa,'unlock'即可。
非正常因为syslogins表sa_role的login就可以修改,只要update syslogins set status=2就锁住,解锁update syslogins set status=0
没有具有sa_role的login,那往下看吧,直接修改master文件吧

再说说sa被删除:(这里指的是从syslogins中删,即sysloginroles表中内容还有。sp_droplogin sa我没有成功)
1有sa_role和sso_role的login
没有什么问题,加上sa即可,sp_addlogin sa,passwd ,但是注意一定把syslogins中sa的suid改为1(新建不是1),这样才能和sysloginroles对应,要不没有权限。当然你手工授权也行。

2有sa_role但没有sso_role的login(sa自己删完自己不断连接也是这样,sso_role好象已经没了)
原来以为没有什么方法,因为sa_role无法创建用户和授权,突然想到可以操作syslogins,插入一个sa即可:insert syslogins values(1,0,'2004-01-01',0,0,0,0,0,'master','sa',null,null,null,null,null,null,null,null),主要这的sa密码插入的是null,插入什么最终sa密码你都不知道(也可能有值对应固定密码),sa的密码也无法改(没有sso_role),一个好办法就是重启sybase加-psa让系统告知,剩下不用我说了吧。

3只有普通权限的login
其实这才是我想主要说说的,原理如下,在sysloginrols表中还有sa的权限信息,select * from sysloginroles(ase12.5)
suid        srid        status
----------- ----------- ------
          1           0      1
          1           1      1
          1           2      1
          1           3      1
其中srid为0和1表明sa_role和sso_role,要做的就是把suid的13(sa)改为3(普通login的suid,假定login为testlogin)
dbcc page看看
Offset 32 - row ID=0 row length=12 # varlen cols=0
21571020 (     0):  00000100 01000000 00000000
Row-Offset table for variable-length columns:

Offset 44 - row ID=1 row length=12 # varlen cols=0
2157102C (     0):  00010100 01000000 01000000
前面是状态,中间是suid,后面srid.
如果是windows下sybase12.5
直接打开master文件,查找00000100 01000000 00000000 00010100 01000000 01000000
如果你的login的id是3
直接改为00000100 0c000000 00000000 00010100 0c000000 01000000
重启sybase,你的这个login就具有sa_role和ssa_role,然后再处理sa
如果找不到“00000100 01000000 00000000 00010100 01000000 01000000”,分开找,应该就在附近。

4如果没有login或sysloginroles记录也没有
目前我还没有办法,那位弟兄知道,告知一声。但是一般ase都有mon_user这个login可用,probe这个login都有但好象不能登录,给sybsystemdb的,有知道到底干什么用的贴一下,懒得问sybase了

这问题应该不会经常遇到,遇到不改master好象还没什么好办法(如果没有master的备份),做重要操作一定加事务,检查对了再提交,写的较仓促,一些试验也未必全面,不对的地方请拍砖。ase12.0的sysloginroles的结构好象有点不同,没有仔细试,应该也是可以的,unix下改法看我以前的贴,应该也可以。

 以下内容由网站建设公司:南宁巨人网络 采集发布,如转载请注明原文出处,并保留这一部分内容。
 巨人网址导航: 虚拟主机 双线主机 主机 域名注册 cn域名 南宁网站建设 服务器租用 vps vps主机

  南宁巨人网络 http://www.nngiant.comhttp://www.ziyougu.com 14年网站建设经验专业地网站建设一条龙服务,免费备案及培训后台操作。com域名注册仅45元。购买热线电话:0771-3824424 3841164 我们将尽力做到最好!
        
关于我们 | 网站公告 | 参观机房 | 合作伙伴 | 代理合作 | 付款方式 | 法律声明 | 常见问题 | 在线留言 | 服务监督 | 联系我们 | 南宁网站建设
 
地址:广西南宁市广西大学正门左侧火炬路17号金达花园7栋2单元241室  邮编:530001  
业务邮箱:    技术邮箱:   财务邮箱:
在线服务空间域名:网站推广请点我!261689845 网站建设:网站建设请点我!309331800 网站推广:网站推广请点我!452936608 售后技术支持:网站推广请点我!309128758
代理合作:网站推广请点我!173022933 全国业务客服电话:0771-3824424  找巨人?  到巨人?
版权所有南宁市巨人网络 未经授权,禁止使用 中华人民共和国备案编号 :桂ICP备06014082号