前期准备
新密码准备
新密码最好不要包含Oracle定义的特殊字符。在Oracle中如果密码包含特殊字符,在sqlplus登录时或者执行导入导出时需要用一种特殊的写法。所以如果一定要用特殊字符,请先在测试环境中准备好这些问题的解决办法再实施。
Agile系统
如下文件需要覆盖新密码
agile.properties。文件地址:【agile安装目录】\Agile936\agileDomain\config
AgileContentPool-jdbc.xml。文件地址:【agile安装目录】\Agile936\agileDomain\config\jdbc
AgileHighAvailability-jdbc.xml。文件地址:【agile安装目录】\Agile936\agileDomain\config\jdbc
agile9exp.bat。文件地址:【agile数据库目录】\app\Administrator\admin\agile9\create\agile
二次开发项目
排查并将所有需要修改密码的二次开发项目整理成Excel列表,包括但不仅限于如下项目:
- 进程扩展项目,
- Web项目,
- axml解析项目,
- ERP同步项目,
- 搜索源代码。有些密码可能被硬编码在了代码中。
强烈建议二次开发过程中要将密码配置在统一的配置文件中。不要在源代码中硬编码数据库连接信息。这样会给维护增加工作量而且还容易遗漏。笔者还遇到过将agile密码配置在数据库里面的神奇操作。
修改步骤
停止Agile系统及其相关应用程序
agile应用,文件服务器,所有相关联的二次开发程序等。
避免程序不断用旧密码尝试,将agile用户锁定。
修改数据库密码
可以使用Oracle SQL developer登录,然后在用户上右击点编辑就能直接修改密码了。
密码修改成功后,最好使用sqlplus命令验证密码是否已经修改成功且能正常登陆
命令参考:sqlplus 用户名/密码@SID
Agile系统密码修改
打开命令行窗口,cd /d 【agile安装目录】\Agile936\agileDomain\bin
执行encryptDBSchemaPwd.cmd,然后将明文密码复制进去生成密文密码。
在上文提到的4个文件中找到agile用户密码相关的行。覆盖新密码。
agile.properties,AgileContentPool-jdbc.xml,AgileHighAvailability-jdbc.xml,agile9exp.bat
二次开发项目密码修改
对照事先准备好的项目列表,依次修改密码。
重启相关应用
启动Agile,文件服务器,刷新Autovue,以及所有二次开发项目。
启动成功之后最好登陆进去试试确保功能已经能够正常使用。