mysql 备份 还原

文章介绍了如何使用mysqldump命令进行MySQL数据库的备份,包括参数详细解释,如设置用户、密码、IP,以及备份选项如禁用索引和设置字符集。同时,提供了两种还原方法,一种是通过pv命令管道传输,另一种是直接在mysql客户端中使用source命令加载SQL文件。
摘要由CSDN通过智能技术生成

1:备份

执行命令方案1:

/usr/local/mysql/bin/mysqldump -uX -pX -h 127.0.0.1 --set-gtid-purged=OFF --skip-extended-insert --add-drop-table --add-locks --create-options --disable-keys --lock-tables --quick --set-charset -e --max_allowed_packet=16777216 --net_buffer_length=16384 --databases dbname > '202301.sql'

这段命令是用来备份 MySQL 数据库中的 dmsdev1 数据库,并将备份结果输出到 202301.sql 文件中。

具体来说,该命令的各个参数含义如下:

  • /usr/local/mysql/bin/mysqldump: 应用程序 mysqldump 的绝对路径

  • -uX: MySQL 用户名为 X

  • -pX: MySQL 密码为 X

  • -h 127.0.0.1: 连接 MySQL 服务器的 IP 地址

  • --set-gtid-purged=OFF: 生成的备份文件中不包含 GTID 信息

  • --skip-extended-insert: 每行记录使用 INSERT 操作,而不是一次性插入多行记录

  • --add-drop-table: 在每个创建的表语句前加上 DROP TABLE

  • --add-locks: 在每个 INSERT 语句中添加一个 LOCK TABLES 语句

  • --create-options: 在 CREATE TABLE 语句中添加所有的 CREATE 选项

  • --disable-keys: 在导入数据时,禁用索引

  • --lock-tables: 在备份每个数据表时,执行 LOCK TABLES 操作

  • --quick: 在 SELECT 查询时,一次读取结果集的所有行,以便尽快释放表锁

  • --set-charset: 设置字符集

  • -e: 生成 SQL 脚本

  • --max_allowed_packet=16777216: 最大的网络数据包大小为 16M

  • --net_buffer_length=16384: 发送给客户端的每个网络数据包大小为 16384 bytes

  • --database dmsdev1: 需要备份的数据库名为 dmsdev1

  • > '202301.sql': 将备份结果输出到 202301.sql 文件中。2

2:还原

方案1:pv -PETab 202301.sql | /usr/local/soft/3306/bin/mysql -uroot -p -h 127.0.0.1  --port=3306

这个命令的话,要么是在sql所在目录下执行,或者是觉得路径

方案2:

登录到客户端:

/usr/local/soft/3306/bin/mysql -uroot -p -h 127.0.0.1  --port=3306

然后执行绝对路径下的sql:source   /usr/202301.sql  

如果没有pv命令的话执行下面两个:

sudo yum install epel-release

sudo yum install pv

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值