优化表,清除碎片
mysql> optimize table student;
备份数据库
//方法1:复制物理文件,不推荐!在mysql客户端中执行 mysql> lock tables table1 [read|write], table2 [read|write]; mysql> flush tables; //将更改同步到数据库 mysql> unlock tables; //方法2:在命令行执行 mysqldump root@myhost# mysqldump -uroot -p --all-databases > all.sql //备份所有 root@myhost# mysqldump --all-database --single-transaction --flush-logs --master-data=2 > all_databases.sql //--single-transaction: 热备份(加锁) ,innodb专用 //--flush-logs, --master-data=2: 写入日志,注明备份执行点,innodb专用 //方法3:在命令行执行 mysqlhotcopy,可以维护一个或者多个数据库复制(主从复制) root@myhost# mysqlhotcopy database path/for/backup
还原数据库
1.创建一个数据库 demo 2.mysql> use demo; 3.mysql> source d:\all.sql 4.root@myhost# mysqlbinlog --disable-log-bin mysql-bin.00001 | mysql //这一步针对支持日志的数据库,例如InnoDB
关于 mysqlbinlog 命令,推荐一篇好文,讲的挺详细的!