#控制文件管理
控制文件默认有3份拷贝(最多8份),具体个数和控制文件路径可以在配置参数文件中指定。
Note:
本文以单机部署为例,不同部署形态的$YASDB_DATA路径不同,具体请以实际返回结果为准,并按需修改为实际的控制文件路径。
# 查看控制文件
1.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')
Copied!
2.动态视图查看:(在数据库在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
Copied!
# 修改控制文件路径
修改数据库的控制文件路径至不同的路径,可以提高控制文件的安全性,示例步骤如下:
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;
Copied!
2.关闭数据库:
SHUTDOWN IMMEDIATE;
Copied!
3.移动ctrl3控制文件:
$ mv /data/yashan/yasdb_data/db-1-1/dbfiles/ctrl3 /data/yashan/yasdb_data/db-1-1/backup/ctrl3
Copied!
4.文件系统层检查确认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
Copied!
5.启动数据库:
$ yasboot cluster start -c yashandb
Copied!
如果数据库启动成功并没有报错,则修改控制文件路径成功。
6.数据库启动后,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
Copied!
Warn:
若要移动控制文件至其他路径,必须先手动修改控制文件路径,在移动对应控制文件至目标位置。
不可在生产环境正常执行状态下单独移动控制文件至其他位置。