MySQL查看数据库表容量大小

今天主要介绍MySQL查看数据库表容量大小的几个方法,仅供参考。下面,我们一起来看。

1.查看所有数据库容量大小

SELECT 
    table_schema AS '数据库', 
    sum( table_rows ) AS '记录数', 
    sum( TRUNCATE ( data_length / 1024 / 1024, 2 ) ) AS '数据容量(MB)', 
    sum( TRUNCATE ( index_length / 1024 / 1024, 2 ) ) AS '索引容量(MB)',
    sum( TRUNCATE ( (data_length+index_length) / 1024 / 1024, 2 ) ) AS '总容量(MB)'
FROM 
    information_schema.TABLES  
GROUP BY 
    table_schema  
ORDER BY 
    sum( data_length ) DESC, 
    sum( index_length ) DESC; 

MySQL数据库备份与还原

1、备份数据库

使用mysqldump命令来备份数据库,默认情况下,mysqldump会把数据信息转换成SQL语句作为标准输入,并且可以使用Linux的输出重定向符>存储到文件中:

mysqldump [OPTIONS] database [tables] > backup_file_name
mysqldump [OPTIONS] --databases [OPTIONS] DB1 [DB2 DB3...]  > backup_file_name
mysqldump [OPTIONS] --all-databases [OPTIONS]  > backup_file_name

下面演示备份示例:
示例1:

mysqldump -uroot -p --all-databases > db_backup.sql
#备份全部数据库schema,存储到db_backup.sql文件

利用vnstat PHP frontend通过网页监控vnstat流量

前面写了如何安装vnstat,并通过命令行来查看服务器流量状态,但是无法直观的显示每天,每时的流量统计。
所以,我们可以通部署web服务器并结合php来通过web图形来展示每天,每月,每年的流量监控结果,通过柱状图可以清晰看到流量统计情况。
下面是部署方法:

wget http://www.sqweek.com/sqweek/files/vnstat_php_frontend-1.5.1.tar.gz
tar zxvf vnstat_php_frontend-1.5.1.tar.gz
mv vnstat_php_frontend-1.5.1 vnstat

解压后将目录移动到你的web根目录中即可,前提是要先配置好php环境。
然后通过web就可以访问到了。(php需要禁用popen函数。)

vnstat清零流量重新统计

上一篇写了如何部署vnstat服务来监控服务器流量,这次写如何将vnstat流量清零,重新计数。

vnstat -D -r
service vnstat stop
rm -rf /var/lib/vnstat/eth0
vnstat --create -i eth0
chown -R vnstat:vnstat /var/lib/vnstat/eth0
chmod 777 /var/lib/vnstat/eth0
service vnstat start
service vnstat restart

修改vnstat流量结算日期
默认为每月1日为流量结算日期,也就是每月流量重新计算的日期,根据需要修改。
编辑 vim /etc/vnstat.conf
修改 MonthRotate 1,需要从几号开始统计就改成几号。

Linux下使用vnstat统计服务器流量

除了服务商提供的面板,我们也可以安装 vnStat 来监控你的 VPS 或服务器的流量使用情况,vn­Stat 安装方法很简单,可分为编译安装或者直接通过源安装。由于源安装一般不是最新版本,推荐使用编译安装。

编译安装

输入以下命令下载源文件

git clone https://github.com/vergoh/vnstat.git

进入 vn­stat 目录

cd vnstat