1. 首页>
  2. 腾讯云代理

[经验分享] CDB实际数据大小及binlog日志相关问题

腾讯云 2017年05月02日 浏览558

腾讯云代理 腾讯云直播申请 游戏上云

摘要:

数据大小相关问题

CDB中实际数据的大小,可以在控制台中查看,方法如下:
进入CDB控制台,点击“管理”按钮,在跳转的页面中查看。

1.png 

2.png 


可以看到该实例总容量为5G,已使用数据为12MB,这个就是实际使用数据的大小。
后面还会显示binlog日志的大小,binlog日志是不占用实例总容量的。

为什么通过sql语句查询出来的数据大小要比页面上显示的小很多呢?
1、首先要确认一下通过sql语句查询是否有统计索引的大小,索引数据也需要检查下 
2、之前是否清理过数据,没有optimize表,要压缩一下表才会释放表空间

使用如下语句,可以查询出具体某个库的数据+索引的大小,注意统计自己的库时,修改命令中库名称
SELECT table_name, table_rows, data_length, index_length, ROUND(((data_length + index_length) / 1024 / 1024 /1024),2) "Size(GB)" FROM information_schema.TABLES WHERE table_schema = 'mysql';


binlog日志相关问题

1、binlog日志默认保存多长时间的?
默认保存3天内的binlog,这也是为什么回档只支持回档到3天内的时间点,回档依赖于冷备的binlog日志。

2、binlog是否占用实例的总容量?
是不占用的,binlog单独存储在实体机的另外一个分区中,不和数据在同一存储分区中。

3、只保存3天内的binlog日志,但是日志为什么非常大?
binlog会记录对数据变更的操作,例如insert、delete、update、alter这些, binlog日志非常大,说明对数据的变更的操作量非常多,非常频繁。

4、想手动删除部分binlog是否可以?
可以。在云数据库的命令行中,执行

show master logs; 
会显示出当前binlog日志的列表,binlog默认以1G的大小做分隔,例如当前的列表为
......................................
mysql-bin.001924
mysql-bin.001925
执行 purge binary logs to 'mysql-bin.001924'; 
那 mysql-bin.001924 之前的binlog日志文件都会被删除掉,删除binlog要谨慎,因为回档依赖于binlog。
也不要删除最新的binlog, 或者执行 flush log 这样的操作,可能会导致主从同步异常。

查看binlog日志列表 : mysql > show binary logs;
删除到指定名称之前的binlog: mysql > purge binary logs to 'binary_log_name';


5、binlog默认保留3天内的,是否可以设置成只保留2天或1天内的?
可以,需要控制台,提交需求类工单,CDB的参数修改工单,申请设置。但是如果设置成只保留2天或1天内的binlog日志,那回档也只能回档到2天内或者1天内的时间点。

6、想获取binlog日志,该如何获取?
有两种方式,
1) 在CDB控制台,“管理”页面中,通过浏览器外网下载到本地、或者在云服务器上通过内网地址下载到云服务器中; 
2) 是在云服务器上,通过mysqlbinlog命令,直接远程导出binlog到服务器上,
需要先通过

show master logs; 
获取binlog日志的列表,然后执行:
mysqlbinlog -uroot -ppassword -h云数据库IP -P3306 --read-from-remote-server mysql-bin.000001 > binlog.01

例子中是将 mysql-bin.000001 这个binlog日志,导出到云服务器上的 binlog.01 这个文件。



腾讯云服务商邀请关注:

http://partners.qcloud.com/invitation/99377079157835da208bd0

关注服务商的链接,提供下您关注的QQ,我们这边审核下即可快速回复您的工单问题与技术支持! 感谢您的信任与支持!

auto_1452.png

腾讯云技术交流群


ps:本站信息来源于 bbs.qcloud.com

相关文章

在线客服
淘宝购买
腾讯云直播申请 title=
+成为腾讯云VIP客户 腾讯云直播申请 客服电话

15818558013

0755-33940501-803

0755-33940501-808