看着日益增长的Mysql存储真是烦,mysql也没有提供这方面比较深入的管理功能,只能自己搞了,一个数据库一个数据库去备份太麻烦,从网上找了个方法还不错,小结一下,备份还原如下:
# 备份数据库:
linux:/usr/local/mysql/bin/mysqldump -uDBuser -pPassword --quick --force --routines --add-drop-database --all-databases --add-drop-table > /data/bkup/all.sql
windows:切到mysql的bin目录,或者把mysql的bin目录加入到path环境变量中,执行以下语句备份
mysqldump -uDBuser -pPassword --quick --force --routines --add-drop-database --all-databases --add-drop-table > /data/bkup/all.sql
# 停止数据库
service mysqld stop(linus)
net stop mysql(windows)
# 删除这些大文件
rm /usr/local/mysql/var/ibdata1
rm /usr/local/mysql/var/ib_logfile*
:> /usr/local/mysql/var/mysql-bin.index
# 手动删除除Mysql之外所有数据库文件夹,这个很关键,里面存放的数据库表的结构,如果不删除,建表的时候会出错,然后启动数据库
service mysqld start
net start mysql(windows)
# 还原数据
/usr/local/mysql/bin/mysql -uroot -phigkoo < /data/bkup/all.sql
windows:切到mysql的bin目录,或者把mysql的bin目录加入到path环境变量中,执行以下语句还原
mysql -uroot -p < /all.sql
主要是使用Mysqldump时的一些参数。
做一下,一下子还原了1个多G的空间,看着没有用的空间被还原了,过瘾,小记一下,以备用。
# 备份数据库:
linux:/usr/local/mysql/bin/mysqldump -uDBuser -pPassword --quick --force --routines --add-drop-database --all-databases --add-drop-table > /data/bkup/all.sql
windows:切到mysql的bin目录,或者把mysql的bin目录加入到path环境变量中,执行以下语句备份
mysqldump -uDBuser -pPassword --quick --force --routines --add-drop-database --all-databases --add-drop-table > /data/bkup/all.sql
# 停止数据库
service mysqld stop(linus)
net stop mysql(windows)
# 删除这些大文件
rm /usr/local/mysql/var/ibdata1
rm /usr/local/mysql/var/ib_logfile*
:> /usr/local/mysql/var/mysql-bin.index
# 手动删除除Mysql之外所有数据库文件夹,这个很关键,里面存放的数据库表的结构,如果不删除,建表的时候会出错,然后启动数据库
service mysqld start
net start mysql(windows)
# 还原数据
/usr/local/mysql/bin/mysql -uroot -phigkoo < /data/bkup/all.sql
windows:切到mysql的bin目录,或者把mysql的bin目录加入到path环境变量中,执行以下语句还原
mysql -uroot -p < /all.sql
主要是使用Mysqldump时的一些参数。
做一下,一下子还原了1个多G的空间,看着没有用的空间被还原了,过瘾,小记一下,以备用。