按照这里设置了,clog文件大小也没变。, clog 这么大, 怎么回收, 有没有快速解决办法。文档都是东一块西一块的。有没有步骤解决,第一步,第二步,第三步这样的直接的文档
https://www.oceanbase.com/knowledge-base/oceanbase-database-1000000000900224?back=kb
https://www.oceanbase.com/docs/common-oceanbase-database-cn-1000000001429714
clog
空间是预分配式的, 节点的 clog
空间目录大小通过参数 log_disk_size
控制(不建议根据 log_disk_percentage
控制)。各个租户分的是节点的 clog
空间大小 。
ncdu 1.20 ~ Use the arrow keys to navigate, press ? for help
--- /home/data/log1/obtest --------------------------------------
/..
50.0 GiB [#######################] 828 /clog
135.5 MiB [ ] 19 /slog
8.0 KiB [ ] 2 /etc2
ncdu 1.20 ~ Use the arrow keys to navigate, press ? for help
--- /home/data/log1/obtest/clog -----------------------------
/..
28.4 GiB [#######################] 456 /log_pool
7.2 GiB [##### ] 118 /tenant_1
6.5 GiB [##### ] 110 /tenant_1006
6.5 GiB [##### ] 110 /tenant_1004
704.0 MiB [ ] 14 /tenant_1005
704.0 MiB [ ] 14 /tenant_1003
租户的 clog
有自己的复用策略,由下面4个参数设置。没有回收命令。
log_disk_throttling_maximum_duration
log_disk_throttling_percentage
log_disk_utilization_threshold
log_disk_utilization_limit_threshold
具体可以查一下。
clog
空间的分配首先要考虑尽可能能满足业务高并发读写情况下的需求,建议是 内存规格的 2~4 倍.
不要太小(如 十几个 G,太小容易遭遇 clog disk is full
类报错),也不用太大(大几百个 G,是有点浪费)
更多参考: OB 数据文件缩容技巧
磁盘性能问题吧
虚拟机来的, 固态硬盘,性能很好的
查一下 这个几个参数 看一下参数是不是设置不合理
show parameters where name in (‘memory_limit’,‘memory_limit_percentage’,‘system_memory’,‘log_disk_size’,‘log_disk_percentage’,‘datafile_size’,‘datafile_disk_percentage’);
obclient [oceanbase]> show parameters where name in (‘memory_limit’);
±------±---------±-------------±---------±-------------±----------±-------±--------------------------------------------------------------------------------------------------------------------------------±---------±--------±--------±------------------±--------------±----------+
| zone | svr_type | svr_ip | svr_port | name | data_type | value | info | section | scope | source | edit_level | default_value | isdefault |
±------±---------±-------------±---------±-------------±----------±-------±--------------------------------------------------------------------------------------------------------------------------------±---------±--------±--------±------------------±--------------±----------+
| zone1 | observer | 192.168.10.6 | 2882 | memory_limit | CAPACITY | 16337M | the size of the memory reserved for internal use(for testing purpose), 0 means follow memory_limit_percentage. Range: 0, [1G,). | OBSERVER | CLUSTER | DEFAULT | DYNAMIC_EFFECTIVE | 0M | 0 |
±------±---------±-------------±---------±-------------±----------±-------±--------------------------------------------------------------------------------------------------------------------------------±---------±--------±--------±------------------±--------------±----------+
1 row in set (0.003 sec)
obclient [oceanbase]> show parameters where name in (‘memory_limit_percentage’);
±------±---------±-------------±---------±------------------------±----------±------±---------------------------------------------------------------------------------------±---------±--------±--------±------------------±--------------±----------+
| zone | svr_type | svr_ip | svr_port | name | data_type | value | info | section | scope | source | edit_level | default_value | isdefault |
±------±---------±-------------±---------±------------------------±----------±------±---------------------------------------------------------------------------------------±---------±--------±--------±------------------±--------------±----------+
| zone1 | observer | 192.168.10.6 | 2882 | memory_limit_percentage | INT | 80 | the size of the memory reserved for internal use(for testing purpose). Range: [10, 95] | OBSERVER | CLUSTER | DEFAULT | DYNAMIC_EFFECTIVE | 80 | 1 |
±------±---------±-------------±---------±------------------------±----------±------±---------------------------------------------------------------------------------------±---------±--------±--------±------------------±--------------±----------+
1 row in set (0.003 sec)
obclient [oceanbase]> show parameters where name in (‘system_memory’);
±------±---------±-------------±---------±--------------±----------±------±------------------------------------------------------------------------------------------------------------------------------------------------------------------------±---------±--------±--------±------------------±--------------±----------+
| zone | svr_type | svr_ip | svr_port | name | data_type | value | info | section | scope | source | edit_level | default_value | isdefault |
±------±---------±-------------±---------±--------------±----------±------±------------------------------------------------------------------------------------------------------------------------------------------------------------------------±---------±--------±--------±------------------±--------------±----------+
| zone1 | observer | 192.168.10.6 | 2882 | system_memory | CAPACITY | 3072M | the memory reserved for internal use which cannot be allocated to any outer-tenant, and should be determined to guarantee every server functions normally. Range: [0M,) | OBSERVER | CLUSTER | DEFAULT | DYNAMIC_EFFECTIVE | 0M | 0 |
±------±---------±-------------±---------±--------------±----------±------±------------------------------------------------------------------------------------------------------------------------------------------------------------------------±---------±--------±--------±------------------±--------------±----------+
1 row in set (0.003 sec)
obclient [oceanbase]> show parameters where name in (‘log_disk_size’);
±------±---------±-------------±---------±--------------±----------±-------±---------------------------------------------------------------±-----------±--------±--------±------------------±--------------±----------+
| zone | svr_type | svr_ip | svr_port | name | data_type | value | info | section | scope | source | edit_level | default_value | isdefault |
±------±---------±-------------±---------±--------------±----------±-------±---------------------------------------------------------------±-----------±--------±--------±------------------±--------------±----------+
| zone1 | observer | 192.168.10.6 | 2882 | log_disk_size | CAPACITY | 20480M | the size of disk space used by the log files. Range: [0, +∞) | LOGSERVICE | CLUSTER | DEFAULT | DYNAMIC_EFFECTIVE | 0M | 0 |
±------±---------±-------------±---------±--------------±----------±-------±---------------------------------------------------------------±-----------±--------±--------±------------------±--------------±----------+
1 row in set (0.002 sec)
obclient [oceanbase]> show parameters where name in (‘log_disk_percentage’);
±------±---------±-------------±---------±--------------------±----------±------±------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------±-----------±--------±--------±------------------±--------------±----------+
| zone | svr_type | svr_ip | svr_port | name | data_type | value | info | section | scope | source | edit_level | default_value | isdefault |
±------±---------±-------------±---------±--------------------±----------±------±------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------±-----------±--------±--------±------------------±--------------±----------+
| zone1 | observer | 192.168.10.6 | 2882 | log_disk_percentage | INT | 0 | the percentage of disk space used by the log files. Range: [0,99] in integer;only effective when parameter log_disk_size is 0;when log_disk_percentage is 0: a) if the data and the log are on the same disk, means log_disk_percentage = 30 b) if the data and the log are on the different disks, means log_disk_perecentage = 90 | LOGSERVICE | CLUSTER | DEFAULT | DYNAMIC_EFFECTIVE | 0 | 1 |
±------±---------±-------------±---------±--------------------±----------±------±------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------±-----------±--------±--------±------------------±--------------±----------+
1 row in set (0.002 sec)
obclient [oceanbase]> show parameters where name in (‘datafile_size’);
±------±---------±-------------±---------±--------------±----------±-------±----------------------------------------±--------±--------±--------±------------------±--------------±----------+
| zone | svr_type | svr_ip | svr_port | name | data_type | value | info | section | scope | source | edit_level | default_value | isdefault |
±------±---------±-------------±---------±--------------±----------±-------±----------------------------------------±--------±--------±--------±------------------±--------------±----------+
| zone1 | observer | 192.168.10.6 | 2882 | datafile_size | CAPACITY | 10875M | size of the data file. Range: [0, +∞) | SSTABLE | CLUSTER | DEFAULT | DYNAMIC_EFFECTIVE | 0M | 0 |
±------±---------±-------------±---------±--------------±----------±-------±----------------------------------------±--------±--------±--------±------------------±--------------±----------+
1 row in set (0.002 sec)
obclient [oceanbase]> show parameters where name in (‘datafile_disk_percentage’);
±------±---------±-------------±---------±-------------------------±----------±------±------------------------------------------------------------------------------±--------±--------±--------±------------------±--------------±----------+
| zone | svr_type | svr_ip | svr_port | name | data_type | value | info | section | scope | source | edit_level | default_value | isdefault |
±------±---------±-------------±---------±-------------------------±----------±------±------------------------------------------------------------------------------±--------±--------±--------±------------------±--------------±----------+
| zone1 | observer | 192.168.10.6 | 2882 | datafile_disk_percentage | INT | 0 | the percentage of disk space used by the data files. Range: [0,99] in integer | SSTABLE | CLUSTER | DEFAULT | DYNAMIC_EFFECTIVE | 0 | 1 |
±------±---------±-------------±---------±-------------------------±----------±------±------------------------------------------------------------------------------±--------±--------±--------±------------------±--------------±----------+
1 row in set (0.003 sec)
尽量这样查一下吧 信息这样有点乱 粘贴到文本里 看一下信息
show parameters where name in (‘memory_limit’,‘memory_limit_percentage’,‘system_memory’,‘log_disk_size’,‘log_disk_percentage’,‘datafile_size’,‘datafile_disk_percentage’)\G;
obclient [oceanbase]> show parameters where name in (‘memory_limit’,‘memory_limit_percentage’,‘system_memory’,‘log_disk_size’,‘log_disk_percentage’,‘datafile_size’,‘datafile_disk_percentage’)\G;
*************************** 1. row ***************************
zone: zone1
svr_type: observer
svr_ip: 192.168.10.6
svr_port: 2882
name: log_disk_percentage
data_type: INT
value: 0
info: the percentage of disk space used by the log files. Range: [0,99] in integer;only effective when parameter log_disk_size is 0;when log_disk_percentage is 0: a) if the data and the log are on the same disk, means log_disk_percentage = 30 b) if the data and the log are on the different disks, means log_disk_perecentage = 90
section: LOGSERVICE
scope: CLUSTER
source: DEFAULT
edit_level: DYNAMIC_EFFECTIVE
default_value: 0
isdefault: 1
*************************** 2. row ***************************
zone: zone1
svr_type: observer
svr_ip: 192.168.10.6
svr_port: 2882
name: log_disk_size
data_type: CAPACITY
value: 20480M
info: the size of disk space used by the log files. Range: [0, +∞)
section: LOGSERVICE
scope: CLUSTER
source: DEFAULT
edit_level: DYNAMIC_EFFECTIVE
default_value: 0M
isdefault: 0
*************************** 3. row ***************************
zone: zone1
svr_type: observer
svr_ip: 192.168.10.6
svr_port: 2882
name: memory_limit_percentage
data_type: INT
value: 80
info: the size of the memory reserved for internal use(for testing purpose). Range: [10, 95]
section: OBSERVER
scope: CLUSTER
source: DEFAULT
edit_level: DYNAMIC_EFFECTIVE
default_value: 80
isdefault: 1
*************************** 4. row ***************************
zone: zone1
svr_type: observer
svr_ip: 192.168.10.6
svr_port: 2882
name: system_memory
data_type: CAPACITY
value: 3072M
info: the memory reserved for internal use which cannot be allocated to any outer-tenant, and should be determined to guarantee every server functions normally. Range: [0M,)
section: OBSERVER
scope: CLUSTER
source: DEFAULT
edit_level: DYNAMIC_EFFECTIVE
default_value: 0M
isdefault: 0
*************************** 5. row ***************************
zone: zone1
svr_type: observer
svr_ip: 192.168.10.6
svr_port: 2882
name: memory_limit
data_type: CAPACITY
value: 16337M
info: the size of the memory reserved for internal use(for testing purpose), 0 means follow memory_limit_percentage. Range: 0, [1G,).
section: OBSERVER
scope: CLUSTER
source: DEFAULT
edit_level: DYNAMIC_EFFECTIVE
default_value: 0M
isdefault: 0
*************************** 6. row ***************************
zone: zone1
svr_type: observer
svr_ip: 192.168.10.6
svr_port: 2882
name: datafile_disk_percentage
data_type: INT
value: 0
info: the percentage of disk space used by the data files. Range: [0,99] in integer
section: SSTABLE
scope: CLUSTER
source: DEFAULT
edit_level: DYNAMIC_EFFECTIVE
default_value: 0
isdefault: 1
*************************** 7. row ***************************
zone: zone1
svr_type: observer
svr_ip: 192.168.10.6
svr_port: 2882
name: datafile_size
data_type: CAPACITY
value: 10875M
info: size of the data file. Range: [0, +∞)
section: SSTABLE
scope: CLUSTER
source: DEFAULT
edit_level: DYNAMIC_EFFECTIVE
default_value: 0M
isdefault: 0
7 rows in set (0.003 sec)
obclient [oceanbase]> show parameters where name in (‘datafile_disk_percentage’) \G;
*************************** 1. row ***************************
zone: zone1
svr_type: observer
svr_ip: 192.168.10.6
svr_port: 2882
name: datafile_disk_percentage
data_type: INT
value: 0
info: the percentage of disk space used by the data files. Range: [0,99] in integer
section: SSTABLE
scope: CLUSTER
source: DEFAULT
edit_level: DYNAMIC_EFFECTIVE
default_value: 0
isdefault: 1
1 row in set (0.003 sec)
第一个文档的参数过期了吧, 设置的时候clog_usage_limit_size 不存在, 版本 4.2.3
查一下 cat /proc/meminfo
[root@localhost ~]# cat /proc/meminfo
MemTotal: 21334028 kB
MemFree: 8347124 kB
MemAvailable: 10696748 kB
Buffers: 2844 kB
Cached: 2189388 kB
SwapCached: 0 kB
Active: 10851700 kB
Inactive: 1044172 kB
Active(anon): 9719876 kB
Inactive(anon): 0 kB
Active(file): 1131824 kB
Inactive(file): 1044172 kB
Unevictable: 0 kB
Mlocked: 0 kB
SwapTotal: 5238780 kB
SwapFree: 5238780 kB
Zswap: 0 kB
Zswapped: 0 kB
Dirty: 200 kB
Writeback: 0 kB
AnonPages: 9684128 kB
Mapped: 709076 kB
Shmem: 16236 kB
KReclaimable: 549288 kB
Slab: 726292 kB
SReclaimable: 549288 kB
SUnreclaim: 177004 kB
KernelStack: 36160 kB
PageTables: 34300 kB
SecPageTables: 0 kB
NFS_Unstable: 0 kB
Bounce: 0 kB
WritebackTmp: 0 kB
CommitLimit: 15905792 kB
Committed_AS: 17505572 kB
VmallocTotal: 34359738367 kB
VmallocUsed: 56964 kB
VmallocChunk: 0 kB
Percpu: 69632 kB
HardwareCorrupted: 0 kB
AnonHugePages: 8423424 kB
ShmemHugePages: 0 kB
ShmemPmdMapped: 0 kB
FileHugePages: 0 kB
FilePmdMapped: 0 kB
CmaTotal: 0 kB
CmaFree: 0 kB
Unaccepted: 0 kB
HugePages_Total: 0
HugePages_Free: 0
HugePages_Rsvd: 0
HugePages_Surp: 0
Hugepagesize: 2048 kB
Hugetlb: 0 kB
DirectMap4k: 225088 kB
DirectMap2M: 11427840 kB
DirectMap1G: 11534336 kB
1、memory_limit = MemTotal * memory_limit_percentage = 21334028*0.8KB
2、log_disk_size取值计算方式:log_disk_size>=memory_limit * 3 2. 预占用会提前申请磁盘空间,部署完成查看磁盘使用很大,属于正常现象。3. log_disk_size优先级大log_disk_percentage。
这个是你的log_disk_size的大小 log_disk_size的大小设置的不合理导致的 目前log_disk_size的大小压根不够用
name: log_disk_size
data_type: CAPACITY
value: 20480M
昨天是 40G, 我看教程是说缩小会回收, 所以改到20g. 那现在要怎么处理才能回收 clog的空间? 存储才11G, clog 就去了42G
刚才没看清楚 不好意思 看错了
1、如果想给 clog 盘瘦身,可以临时调小 log_disk_utilization_threshold,等磁盘空间降下来后,调整log_disk_size大小,再将 log_disk_utilization_threshold 调回默认值 80 。log_disk_size设置过小 会有风险的 会导致clog没有空间可以用
2、log_disk_size取值计算方式:log_disk_size>=memory_limit * 3 2. 预占用会提前申请磁盘空间,部署完成查看磁盘使用很大,属于正常现象。3. log_disk_size优先级大log_disk_percentage。