GaussDB T 实践:如何通过命令转储控制文件
【摘要】 如同我在 Oracle 数据中描写的那样,控制文件同样是 GaussDB 的大脑,其中记录着数据库至关重要的文件、表空间、归档等信息。通过 dump ctrlfile 的命令可以转储控制文件的信息。
如同我在 Oracle 数据中描写的那样,控制文件同样是 GaussDB 的大脑,其中记录着数据库至关重要的文件、表空间、归档等信息。
通过 dump ctrlfile 的命令可以转储控制文件的信息:
connected.
SQL> alter system dump ctrlfile;
Succeed.
SQL> exit
在 trc 目录下生成了 ctrl_page.trc 文件:
[eygle@enmodb1 trc]$ ls
ctrl_page.trc zengine_smon_00003.trc
这其中记录了控制文件的基本信息:
information of page 0-1
lsn: 0 pcn: 0 size: 16384 type: ctrl next_ext: 1023-0
core information:
version: 1-0-1-0
startup times: 2
dbid times: 918057731
database name: ENMOTECH
init time: 2019-12-26 14:52:54
scn: 2729453806436353
table$ entry: 2
ix_table$1 entry: 34
ix_table$2 entry: 42
column$ entry: 10
ix_column$ entry: 50
index$ entry: 18
ix_index$1 entry: 58
ix_index$2 entry: 66
user$_entry: 26
ix_user$1 entry: 74
ix_user$2 entry: 82
rcy point: 0-4-310978-152773
lrp point: 0-4-310978-152773
raft flush point: scn(0)-lfn(0)-raft_index(0)
ckpt_id: 2117
dw_start: 2192
dw_end: 2192
lsn: 4815341
lfn: 152809
build completed: 1
log count: 3
log hwm: 3
log first: 0
log last: 0
archive mode: 1
archive logs: 0-0-0-0-0-0-0-0-0-0
db_role: 0
protect mode: 0
space count: 7
device count: 13
page size: 8192
undo segments: 32
reset logs: 0-0-0
archived_start: 0
archived_end: 3
logic replication mode: 0
shutdown consistency: 0
open inconsistency: 0
consistent lfn: 152773
storage information:
logfiles information:
id name size hwm seq block_size flg type status forward backward
#0 /gaussdb/gaussdata/data/log1 268435456 0 0 512 0 1 3 0 0
#1 /gaussdb/gaussdata/data/log2 268435456 0 0 512 0 1 1 0 0
#2 /gaussdb/gaussdata/data/log3 268435456 0 0 512 0 1 1 0 0
spaces information:
id spaceid used name flg block_size extent_size file_hwm org_scn files
#0 0 1 SYSTEM 1 8192 8 1 13941506049 0
#1 1 1 TEMP 1 8192 16 2 27533094913 1, 2
#2 2 1 UNDO 1 8192 1 1 31907020801 3
#3 3 1 USERS 9 8192 8 5 45212663809 4, 5, 6, 7, 8
#4 4 1 TEMP2 9 8192 8 2 111952060417 9, 10
#5 5 1 TEMP2_UNDO 1 8192 1 1 116150386689 11
#6 6 1 SYSAUX 1 8192 8 1 129292652545 12
datafiles information:
id dfileid used name size block_size flg type auto_extend_size auto_extend_maxsize
archive log information:
id recid dest_id rst_id asn stamp blocks block_size first last name
#0 1 0 0 1 631033201751653 522831 512 140075180033 1486171452416001 /gaussdb/gaussdata/archive_log/arch_0_1.arc
#1 2 0 0 2 631093919681526 524288 512 1486171589705729 1746953313841153 /gaussdb/gaussdata/archive_log/arch_0_2.arc
#2 3 0 0 3 631232697463247 524288 512 1746953429749761 2342998215012353 /gaussdb/gaussdata/archive_log/arch_0_3.arc
控制文件的基本信息,还可以查询 dv_control_files 视图获取:
NAME BLOCK_SIZE
---------------------------------------------------------------- ------------
/gaussdb/gaussdata/data/cntl1 16384
/gaussdb/gaussdata/data/cntl2 16384
/gaussdb/gaussdata/data/cntl3 16384
控制文件本身是二进制文件,但是通过 strings 也可以输出其中的文本属性信息,例如:
6ENMOTECH
/gaussdb/gaussdata/data/log1
/gaussdb/gaussdata/data/log2
/gaussdb/gaussdata/data/log3
SYSTEM
TEMP
UNDO
USERS
TEMP2
TEMP2_UNDO
SYSAUX
/gaussdb/gaussdata/data/system
/gaussdb/gaussdata/data/temp1_01
/gaussdb/gaussdata/data/temp1_02
/gaussdb/gaussdata/data/undo
/gaussdb/gaussdata/data/user1
/gaussdb/gaussdata/data/user2
/gaussdb/gaussdata/data/user3
/gaussdb/gaussdata/data/user4
/gaussdb/gaussdata/data/user5
/gaussdb/gaussdata/data/temp2_01
/gaussdb/gaussdata/data/temp2_02
/gaussdb/gaussdata/data/temp2_undo
/gaussdb/gaussdata/data/sysaux
/gaussdb/gaussdata/archive_log/arch_0_1.arc
/gaussdb/gaussdata/archive_log/arch_0_2.arc
/gaussdb/gaussdata/archive_log/arch_0_3.arc
如果控制文件之一被损坏,则可以通过复制其他文件进行恢复。
转自墨天轮
【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
作者其他文章
评论(0)