一、背景介绍
某企业生产环境中采用一台Windows2008R2物理服务器安装vCenter Server 5.5和Oracle 11g数据库,VC使用system账户连接Oracle数据库。安装之初对密码合规性没有明确规定,随意设置了该服务器administrator和Oracle的system账户密码,后期要求对这两个账户密码按要求进行整改。
二、问题及排查过程
当更改完administrator和oracle的system账户密码后,重启服务器,发现vcenter服务无法启动,手动启动出现提示
查看系统日志提示未安装次组建或安装已损坏,事件ID1000
回想安装vcenter时选择的使用系统账户启动vcenter,并在安装时设置过连接oracle数据库的system账户的密码,估计问题就出在这两点上。打开ODBC数据源使用更改后的新密码进行连接测试,发现可以正常连接,初步判断不是数据库的问题,但是发现oracle服务可以正常启动(安装时oracle服务也是选择使用系统账户启动),说明更改administrator账户密码后系统启动服务也是正常的。
在运行栏中使用sqlplus命令,通过system账户连接数据库时提示system账户被锁定(oracle默认用户尝试10次登录失败后会锁定该用户),在CMD界面下使用:
sqlplus / as sysdba; #以sysdba用户免密码登录
alter user system account unlock; #解锁system账户
继续寻找问题,过了一会当再次使用sqlplus命令通过system账户连接数据库时,提示system账户又被锁定,估计问题产生的原因是:通过sqlplus更改完system账户后,即使ODBC测试连接正常,VC通过system账户连接oracle仍使用的是旧密码,而不会自动同步更改密码,所以才会再次触发锁定。查看日志,在VC的C:\ProgramData\VMware\VMwareViryualCenter\Logs\vpxd日志中果然发现问题出在数据库上
再次使用sysdba登录并解锁system账户,在VC服务器命令行下将目录切换到C:\ProgramFiles\VMware\Infrastructure\VirtualCenter Server执行:vpxd –P <new_password>直接修改vCenter连接数据的密码;也可以执行:vpxd –p 通过交互方式修改密码。然后重启VC服务,服务正常启动。
三、总结
1.Oracle数据库修改完密码后,VC中保存的密码并不会同步进行更改,将还需要在VC中更改密码(MSSQL未测试,不确定是否也需要手动更改此密码)
2.更改administrator账户密码对于使用oracle数据库启动VC服务没有影响,不同于使用MSSQL,当更改完administrator密码后VC无法启动的原因是由于SQL server无法启动
需要在后台服务中为MSSQL服务重新设置新密码完成启动后,VC服务才能启动
本文出自 “兔样兔森破” 博客,请务必保留此出处http://arkling.blog.51cto.com/2844506/1919674
原文地址:http://arkling.blog.51cto.com/2844506/1919674