欢迎光临
我们一直在努力

Mysql8-在mysql命令下数据库的备份与还原方法

我们平时对只有几M或十几M的mysql数据库的备份与还原一般是直接通过管理工具phpmyadmin来完成,但若是数据库大到上百M或是几百M,那用phpmyadmin的备份和还原功能就不太可取了,不单是备份过程时间长,最大的问题可能就是备份存在不完整的可能性。

那有啥办法即能超快的备份数据库又不会丢数据吗?答案是有的,那就是利用mysql的命令来备份数据,不光备份速度快,而且还不会丢数据,今天就简单的介绍下利用mysql命令来备份和还原数据库的流程,这里的数据库我是装在linux7上面的,对于装在win系统上面的,我们在DOS命令行下进行相应的安装目录便可以进行操作了。

数据库安装路径:/usr/local/mysql/ ,我们先cd进入这个目录。

1,备份mysql数据库

命令格式:bin/mysqldump -h 主机名 -P 端口 -u 用户名 -p --database 数据库名 > 备份文件.sql

注:这里的“-P 端口” 默认是3306,如果没有修改成其他端口,这个参数就不需要加入,备份文件是可以指定路径的,如果不指定默认是备份到了mysql的安装根目录下面。

  • 备份指定的数据库powxy为powxy.sql,这里输密码直接备份。
[root@localhost mysql]# bin/mysqldump -u root -h 127.0.0.1 -p --databases wp > wp.sql
Enter password: 
  • 备份所有数据库,一般只有在升级数据库时可能会用到。
[root@localhost mysql]# bin/mysqldump -u root -h 127.0.0.1 -p --all_databases > databases.sql
Enter password: 

2,利用source指令还原mysql数据库。

  • source是mysql的一个指令,所以要使用这个指令,我们首先要登录到mysql命令下。
[root@localhost mysql]# /usr/local/mysql/bin/mysql -u root -h 127.0.0.1 -p
Enter password: 
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 5309
Server version: 8.0.13 MySQL Community Server - GPL

Copyright (c) 2000, 2018, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql> 
  • 然后就要以使用source指令来还原数据库了,上面的备份时我没有指定备份文件的存放目录,所以备份文件应该是存放在mysql的安装目录下面的,所以这里的还原我也就不需要指定还原文件的路径了,若是需要还原其他目录的备份文件这里在source后一定要输入备份文件的绝对路径。
mysql> source wp.sql

回车确定后我们的mysql便开始执行还原命令了,几百M的数据,也就一分多钟,这里我用的双核2G的主机,可以说这个指令在数据库的还原上招待效率还是非常高的。

补充:今天帮一客户恢复一个大的数据库,没有输入还原数据库的sql路径,结果报ERROR: Failed to open file powxy.sql error 2;没有权限,直接加上路径就OK了,如下

mysql> source /usr/local/mysql/data.sql
赞(0) 打赏
转载请注明出处:爱编程 » Mysql8-在mysql命令下数据库的备份与还原方法
分享到: 更多

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址

爱编程、一个运维兼程序员的博客!

联系我们

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏