04-Mysql-备份与恢复

10 阅读1分钟

1.mysqldump备份

  1. mysqldump备份语法
Mysqldump -u用户名 -p密码 参数 数据库名 > 数据备份文件

mysqldump -uroot -p --all-databases > /opt/all-3306.sql

  1. mysqldump数据恢复
mysql> source /opt/all-3306.sql

单独备份某个库中某个表数据


                             库      表     
mysqldump -uroot -plinux3306 world  city   >  /opt/world_city.sql

  • 方式1,导入数据
mysql> create database test_world;
Query OK, 1 row affected (0.00 sec)

mysql> use test_world;
Database changed
mysql> source /opt/world_city.sql
  • 方式2,命令行,制定库,导入
                                          制定库名
mysql -S /linux0224/mysql_3307/mysql.sock test_world  < /opt/world_city.sql 

mysql> select * from city where id <5;
+----+----------------+-------------+----------+------------+
| ID | Name           | CountryCode | District | Population |
+----+----------------+-------------+----------+------------+
|  1 | Kabul          | AFG         | Kabol    |    1780000 |
|  2 | Qandahar       | AFG         | Qandahar |     237500 |
|  3 | Herat          | AFG         | Herat    |     186800 |
|  4 | Mazar-e-Sharif | AFG         | Balkh    |     127800 |
+----+----------------+-------------+----------+------------+
4 rows in set (0.00 sec)

备份库中的多个表

                             数据库   表1  表2      表3
mysqldump -uroot -plinux3306 world  city country  countrylanguage  >  /opt/world_all_tb.sql

备份多个库

--database,-B
                                 库1        库2
mysqldump -uroot -plinux3306  -B school_db dev01 > /opt/school_db-dev01.sql

在3307中导入数据库

mysql -S /linux0224/mysql_3307/mysql.sock <  /opt/school_db-dev01.sql

备份只要表结构,不要数据

# 语法
mysqldump -uroot -p   库   该库下的表1  该库下的表2   --no-data 

# 导出生产服务器 3306实例的  员工库 下,职称表的结构
mysqldump -uroot -plinux3306  --no-data  employees titles > /opt/emp_titles_no_data.sql