且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

更改Oracle数据库密码导致vcenter服务无法启动

更新时间:2022-08-14 19:59:34

一、背景介绍

    某企业生产环境中采用一台Windows2008R2物理服务器安装vCenter Server 5.5和Oracle 11g数据库,VC使用system账户连接Oracle数据库。安装之初对密码合规性没有明确规定,随意设置了该服务器administrator和Oracle的system账户密码,后期要求对这两个账户密码按要求进行整改。

二、问题及排查过程

    当更改完administrator和oracle的system账户密码后,重启服务器,发现vcenter服务无法启动,手动启动出现提示

更改Oracle数据库密码导致vcenter服务无法启动

    查看系统日志提示未安装次组建或安装已损坏,事件ID1000

更改Oracle数据库密码导致vcenter服务无法启动

    回想安装vcenter时选择的使用系统账户启动vcenter,并在安装时设置过连接oracle数据库的system账户的密码,估计问题就出在这两点上。打开ODBC数据源使用更改后的新密码进行连接测试,发现可以正常连接,初步判断不是数据库的问题,但是发现oracle服务可以正常启动(安装时oracle服务也是选择使用系统账户启动),说明更改administrator账户密码后系统启动服务也是正常的。

更改Oracle数据库密码导致vcenter服务无法启动

    在运行栏中使用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日志中果然发现问题出在数据库上

更改Oracle数据库密码导致vcenter服务无法启动

    再次使用sysdba登录并解锁system账户,在VC服务器命令行下将目录切换到C:\ProgramFiles\VMware\Infrastructure\VirtualCenter Server执行:vpxd –P <new_password>直接修改vCenter连接数据的密码;也可以执行:vpxd –p 通过交互方式修改密码。然后重启VC服务,服务正常启动。

更改Oracle数据库密码导致vcenter服务无法启动

三、总结

1.Oracle数据库修改完密码后,VC中保存的密码并不会同步进行更改,将还需要在VC中更改密码(MSSQL未测试,不确定是否也需要手动更改此密码)

2.更改administrator账户密码对于使用oracle数据库启动VC服务没有影响,不同于使用MSSQL,当更改完administrator密码后VC无法启动的原因是由于SQL server无法启动

更改Oracle数据库密码导致vcenter服务无法启动

需要在后台服务中为MSSQL服务重新设置新密码完成启动后,VC服务才能启动

更改Oracle数据库密码导致vcenter服务无法启动



本文转自 qiao645 51CTO博客,原文链接:http://blog.51cto.com/arkling/1919674