#配置参数文件与密码文件管理
YashanDB中存在两类重要的配置文件:配置参数文件和密码文件,分别控制其所在实例的数据库的系统配置参数和系统用户sys的口令,破坏或缺失这两类文件将导致所在实例无法启动或登录。
# 配置参数文件
在YashanDB中,配置参数文件可分为服务器参数文件和参数文件,数据库实例启动时需通过该类文件进行参数初始化。
Caution:
请勿直接编辑配置参数文件,避免出现不可预计的异常。如需调整参数配置,请使用ALTER SYSTEM语句。
| 特征 | 服务器参数文件 | 参数文件 |
|---|---|---|
| 创建方式 | 安装完成后,由用户按需执行CREATE SPFILE语句基于参数文件创建 | 安装时自动创建 可按需执行CREATE PFILE语句基于服务器参数文件覆盖更新 |
| 文件路径 | 默认路径为$YASDB_DATA/config 在共享集群部署中,还会在YFS中生成一份参数文件,默认路径为+DG0/config,用于记录要求多实例一致(V$PARAMETER视图的CLUSTER_CONSISTENT = TRUE)的参数配置 | 同服务器参数文件 |
| 文件名称 | yasdb.spfile | yasdb.ini |
| 文件格式 | 二进制 | 纯文本 可直接读写,安全性较低 |
| 使用优先级 | 高 数据库实例启动时会先尝试读取yasdb.spfile文件,该文件不存在或正确性检验失败才会读取yasdb.ini文件 | 低 |
| 参数持久化 | 执行ALTER SYSTEM并指定scope为spfile或both修改参数时,会将参数值持久化到当前使用的文件 | 同服务器参数文件 |
| 其他 | 使用yasdb.spfile文件启动数据库实例时,若已开启SSL可信信道(SSL_ENABLE = ON且ENCRYPT_TYPE = SSL)还会额外校验服务端证书文件相关配置与yasdb.spfile记录的一致性,一致性校验失败时会导致启动失败(不会再切换至yasdb.ini文件) | - |
# 密码文件
密码文件是名为yasdb.pwd的文本文件,不可直接进行编辑,其路径受PASSWORD_FILE参数控制。
示例
show parameter PASSWORD_FILE;
NAME VALUE
------------------ -----------------------
PASSWORD_FILE ?/instance/yasdb.pwd
以下为yasdb.pwd内容示例:
示例
$ cat yasdb.pwd
M'´iSYSS:9E276A5EFA869D8DD05E6CE27CC8430194D04451D6FE9EBCAA7BE0A933800084621C2654CA20D47DFFC9
该文件内容为加密后信息,虽然为文本文件,但不能直接修改里面的内容,如果需要修改SYS用户的密码,可以通过以下命令完成:
示例
$ yaspwd file=yasdb.pwd
$ yaspwd file=yasdb.pwd input_file=yasdb_input.pwd sys=y
Note:
yasdb.pwd文件不存在时,才能生成新的密码文件,因此修改密码前应该先将yasdb.pwd删除或改名,详细操作请参考工具手册yaspwd。

