将Sybase ASE登录sa的密码置为空NULL的方法
问题描述:
在UNIX及某些系统内不能启动Sybase Center,那么在这种情况下怎样修改sa密码呢,同时如果我们不需要密码时也可以使用该方法将sa密码置为空。
如何将sa的密码置为空,假设当前sa密码为:123456。
解决方案:
$isql -Usa -P123456 -SSYBASE
1>sp_configure "upgrade version"
2>go
#记录打印的版本号,Run Value表示当前系统版本是:11920 (sybase 11.9.2)
1>sp_configure "upgrade version",492
2>go
#更改版本号为492
1>sp_password '123456',NULL,sa
2>go
#修改密码将123456密码置为空
1>sp_configure "upgrade version",11920
2>go
#务必更改版本号为原来的版本号
如果将参数upgrade version修改为492后忘记改回原来的值,则在Sybase服务器关闭后再启动的时候报错:
Pre 10.0 database cannot work with this version of the server. Please upgrade the databases to 10.0 or above release and then try to start with this version of the server. Shutting down ***.
这说明master数据库已经损坏了。因此,通过修改参数upgrade version重置sa口令为空时千万要谨慎,最后一定要将upgrade version修改回原值!
修复的方法请参考:
master数据库配置区域(configuration area)损坏的一种修复方法
https://www.dbainfo.net/one-way-to-recover-master-configuration-area.htm