使用sql文件还原MySQL

6/18/2023 MySQLubuntu

# 一 场景

使用名为zabbix.sql的备份文件对数据库内容进行还原

# 二 实现

# 1 删除已有数据库实例

为了测试备份过程,将现有的数据删除。
如果本来就没有该数据库实例,则可跳过本步骤。

# 1.1 登录数据库

mysql -u zabbix -p
1

# 1.2 删除zabbix实例

登录到mysql后, 删除zabbix实例。
注意:在执行之前先确保已经将zabbix数据库的内容备份到了sql文件中。

DROP DATABASE zabbix;
# 以下是执行后的输出内容
Query OK, 166 rows affected (6.30 sec)
1
2
3

出现Query OK表示成功删除。可再使用show databases查看当前数据库。

SHOW DATABASES;
1

# 2 创建zabbix实例

使用sql文件还原之前,需要创建一个名为zabbix的数据库实例,来接收还原的数据

# 2.1 创建数据库

CREATE DATABASE zabbix charset=utf8;
1

# 2.2 执行后可再通过show databases来确认是否创建成功

SHOW DATABASES;
1

# 3 还原数据

# 3.1 通过exit指令从MySQL退出到终端

exit;
1

# 3.2 通过mysql指令指定sql文件并执行还原

$ sudo mysql -uzabbix -ppassword zabbix < ~/data_backup/230509/zabbix.sql
1

# 3.3 进入MySQL验证是否已经还原

登录数据库

$ mysql -u zabbix -p
1

切换到zabbix实例

USE zabbix;
1

查看所有表

SHOW TABLES;
1

查看某个表结构(以alerts表为例)

DESC alerts;
1

查看某个表中的数据(以users表为例)

SELECT * FROM users;
1
Last Updated: 3/2/2024, 11:36:32 AM