#控制文件管理

控制文件默认有3份拷贝(最多8份),具体个数和控制文件路径可以在配置参数文件中指定。

Note

本文以单机部署为例,不同部署形态的$YASDB_DATA路径不同,具体请以实际返回结果为准,并按需修改为实际的控制文件路径。

# 查看控制文件

方式一:使用SQL语句查看:

show parameter CONTROL_FILES;

NAME              VALUE                                                            
----------------- ---------------------------------------------------------------- 
CONTROL_FILES     ('/data/yashan/yasdb_data/db-1-1/dbfiles/ctrl1', '/data/yashan/yasdb_data/db-1-1/dbfiles/ctrl2', '/data/yashan/yasdb_data/db-1-1/dbfiles/ctrl3')

方式二:在数据库处于mount或open状态时通过动态视图查看:

SELECT ID,NAME,BLOCK_SIZE,FILE_SIZE_BLKS,BYTES FROM V$CONTROLFILE;
  ID NAME                                                BLOCK_SIZE FILE_SIZE_BLKS       BYTES
---- ------------------------------------------------- ------------ -------------- -----------
   0 /data/yashan/yasdb_data/db-1-1/dbfiles/ctrl1            8192           3507    28729344
   1 /data/yashan/yasdb_data/db-1-1/dbfiles/ctrl2            8192           3507    28729344
   2 /data/yashan/yasdb_data/db-1-1/dbfiles/ctrl3            8192           3507    28729344

# 修改控制文件路径

修改数据库的控制文件路径至不同的路径,可以提高控制文件的安全性。

Warn

若要移动控制文件至其他路径,必须先手动修改控制文件路径,再移动对应控制文件至目标位置。

不可在生产环境正常执行状态下单独移动控制文件至其他位置。

  1. 修改控制文件参数:
ALTER SYSTEM SET control_files=('/data/yashan/yasdb_data/db-1-1/dbfiles/ctrl1','/data/yashan/yasdb_data/db-1-1/dbfiles/ctrl2','/data/yashan/yasdb_data/db-1-1/backup/ctrl3') scope=spfile;
  1. 关闭数据库:
SHUTDOWN IMMEDIATE;
  1. 移动ctrl3控制文件:
$ mv /data/yashan/yasdb_data/db-1-1/dbfiles/ctrl3 /data/yashan/yasdb_data/db-1-1/backup/ctrl3
  1. 文件系统层检查确认ctrl3控制文件:
ls -l /data/yashan/yasdb_data/db-1-1/dbfiles/ctrl1
ls -l /data/yashan/yasdb_data/db-1-1/dbfiles/ctrl2
ls -l /data/yashan/yasdb_data/db-1-1/backup/ctrl3
  1. 启动数据库:
$ yasboot cluster start -c yashandb

如果数据库启动成功并没有报错,则修改控制文件路径成功。

  1. 数据库启动后,yasql登录到数据库检查确认ctrl3控制文件(数据库在mount或open状态执行):
SELECT ID,NAME,BLOCK_SIZE,FILE_SIZE_BLKS,BYTES FROM V$CONTROLFILE;
  ID NAME                                                BLOCK_SIZE FILE_SIZE_BLKS       BYTES
---- ------------------------------------------------- ------------ -------------- -----------
  0 /data/yashan/yasdb_data/db-1-1/dbfiles/ctrl1            8192           3507    28729344
  1 /data/yashan/yasdb_data/db-1-1/dbfiles/ctrl2            8192           3507    28729344
  2 /data/yashan/yasdb_data/db-1-1/backup/ctrl3             8192           3507    28729344
pdf-btn 下载文档
copy-btn 复制链接