一:使用mysqldump进行逻辑备份
1)备份MySQL服务器上的所有库
# mysqldump -u root -p --all-databases > /root/alldb.sql
Enter password: //验证口令
查看备份文件alldb.sql的部分内容:
# grep -vE '^/|^-|^$' /root/alldb.sql | head -15
2)只备份指定的某一个库
将userdb库备份为userdb.sql文件:
# mysqldump -u root -p userdb > userdb.sql
Enter password: //验证口令
3)同时备份指定的多个库
同时备份mysql、userdb库,保存为mysql+userdb.sql文件:
# mysqldump -u root -p -B mysql userdb > mysql+test+userdb.sql
Enter password: //验证口令
二:使用mysql命令从备份中恢复数据库、表
1)创建名为userdb2的新库
mysql> CREATE DATABASE userdb2;Query OK, 1 row affected (0.00 sec)
2)导入备份文件,在新库中重建表及数据
# mysql -u root -p userdb2 < /root/userdb.sql
Enter password: //验证口令
3)确认新库正常,启用新库
mysql> USE userdb2; mysql> SELECT sn,username,uid,gid,homedir from userlist limit 10; //查询数据,确认可用
4)废弃或删除旧库
mysql> DROP DATABASE userdb;