gaussdb T默认安装的数据库有6组redo日志,每个日志2G,占用太大空间,高斯数据库redo日志的维护与oracle类似,无法不能直接调整大小,可以先添加,再删除。
同时gaussdb维护redo日志还有如下约束:
- ACTIVE和CURRENT日志不能删除,需要切换日志再删除
- 最少需要3组redo日志
- redo日志大小不能小于120M
SQL> select FILE_NAME,BYTES,STATUS,TYPE from DV_LOG_FILES;
FILE_NAME BYTES STATUS TYPE
------------------------------------------ -------------------- -------------------- --------------------
/opt/gaussdb/data/data/log_1 2147483648 INACTIVE ONLINE
/opt/gaussdb/data/data/log_2 2147483648 CURRENT ONLINE
/opt/gaussdb/data/data/log_3 2147483648 INACTIVE ONLINE
/opt/gaussdb/data/data/log_4 2147483648 INACTIVE ONLINE
/opt/gaussdb/data/data/log_5 2147483648 INACTIVE ONLINE
/opt/gaussdb/data/data/log_0 2147483648 INACTIVE ONLINE
6 rows fetched.
开始删除日志,
SQL> alter database drop logfile ('/opt/gaussdb/data/data/log_0');
Succeed.
SQL> alter database drop logfile ('/opt/gaussdb/data/data/log_1');
Succeed.
SQL> alter database drop logfile ('/opt/gaussdb/data/data/log_2');
GS-00841, Log file is in use, can not be dropped
SQL> alter database drop logfile ('/opt/gaussdb/data/data/log_3');
Succeed.
SQL> alter database drop logfile ('/opt/gaussdb/data/data/log_4');
GS-00812, Database requires at least 3 log files.
从上面报错可以看到,GS-00841:CURRENT状态的日志不能删除,GS-00812:数据库至少需要3个日志文件。
尝试添加3个100m的日志
SQL> alter database add logfile ('/opt/gaussdb/data/data/log_01' size 100M,'/opt/gaussdb/data/data/log_02' size 100M,'/opt/gaussdb/data/data/log_03' size 100M);
GS-00714, Log file size should be larger than log keep size 125845504
SQL> select 125845504/1024/1024 from dual;
125845504/1024/1024
--------------------
120.015625
1 rows fetched.
改为添加三个128M的日志。
SQL> alter database add logfile ('/opt/gaussdb/data/data/log_01' size 128m,'/opt/gaussdb/data/data/log_02' size 128m,'/opt/gaussdb/data/data/log_03' size 128m);
Succeed.
删除剩余的几个日志文件,如果状态仍然是active,需要多切换几次日志,直到inactive即可删除。
SQL> alter database drop logfile ('/opt/gaussdb/data/data/log_4');
Succeed.
SQL> alter database drop logfile ('/opt/gaussdb/data/data/log_5');
Succeed.
SQL> alter system switch logfile;
Succeed.
SQL> select FILE_NAME,BYTES,STATUS,TYPE from DV_LOG_FILES;
FILE_NAME BYTES STATUS TYPE
---------------------------------------------------------------- -------------------- -------------------- --------------------
/opt/gaussdb/data/data/log_01 134217728 UNUSED ONLINE
/opt/gaussdb/data/data/log_02 134217728 UNUSED ONLINE
/opt/gaussdb/data/data/log_2 2147483648 ACTIVE ONLINE
/opt/gaussdb/data/data/log_03 134217728 CURRENT ONLINE
4 rows fetched.
SQL> alter system switch logfile;
Succeed.
SQL> select FILE_NAME,BYTES,STATUS,TYPE from DV_LOG_FILES;
FILE_NAME BYTES STATUS TYPE
---------------------------------------------------------------- -------------------- -------------------- --------------------
/opt/gaussdb/data/data/log_01 134217728 CURRENT ONLINE
/opt/gaussdb/data/data/log_02 134217728 UNUSED ONLINE
/opt/gaussdb/data/data/log_2 2147483648 INACTIVE ONLINE
/opt/gaussdb/data/data/log_03 134217728 ACTIVE ONLINE
4 rows fetched.
SQL> alter database drop logfile ('/opt/gaussdb/data/data/log_2');
Succeed.
查看调整后的日志文件:
SQL> select FILE_NAME,BYTES,STATUS,TYPE from DV_LOG_FILES;
FILE_NAME BYTES STATUS TYPE
---------------------------------------------------------------- -------------------- -------------------- --------------------
/opt/gaussdb/data/data/log_01 134217728 CURRENT ONLINE
/opt/gaussdb/data/data/log_02 134217728 UNUSED ONLINE
/opt/gaussdb/data/data/log_03 134217728 ACTIVE ONLINE
3 rows fetched.
[omm@pr7 data]$ ls -lh log_0*
-rw------- 1 omm dbgrp 128M Jan 31 23:08 log_01
-rw------- 1 omm dbgrp 128M Jan 31 23:06 log_02
-rw------- 1 omm dbgrp 128M Jan 31 23:08 log_03
「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。




