博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Centos-Mysql复制备份还原数据库
阅读量:6757 次
发布时间:2019-06-26

本文共 3008 字,大约阅读时间需要 10 分钟。

备份单个数据库的数据和结构(,数据库名mydb)

mysqldump -u用戶名 -p密码 -d 数据库名 表名 > 脚本名;

导出整个数据库结构和数据

mysqldump -h localhost -uroot -p123456 database > dump.sqlmysqldump -h '192.168.1.191' -uroot -p111111 js_namc>/tmp/js_namc.sql

导出单个数据表结构和数据

mysqldump -h localhost -uroot -p123456  database table > dump.sqlmysqldump -h '172.16.7.16' -uroot -pnsv_2018  gx_nae_online ad_user > /tmp/ad_user.sql

导出整个数据库结构(不包含数据)

mysqldump -h localhost -uroot -p123456  -d database > dump.sql

导出单个数据表结构(不包含数据)

mysqldump -h localhost -uroot -p123456  -d database table > dump.sql

还原单个数据库(需指定数据库)

mysql>use namcmysql>source /tmp/js_namc.sql

常见选项:

--all-databases, -A: 备份所有数据库--databases, -B: 用于备份多个数据库,如果没有该选项,mysqldump把第一个名字参数作为数据库名,后面的作为表名。使用该选项,mysqldum把每个名字都当作为数据库名。--force, -f:即使发现sql错误,仍然继续备份--host=host_name, -h host_name:备份主机名,默认为localhost--no-data, -d:只导出表结构--password[=password], -p[password]:密码--port=port_num, -P port_num:制定TCP/IP连接时的端口号--quick, -q:快速导出--tables:覆盖 --databases or -B选项,后面所跟参数被视作表名--user=user_name, -u user_name:用户名--xml, -X:导出为xml文件

为了方便快速复制一个数据库,可以用以下命令

将db1数据库的数据以及表结构复制到newdb数据库

创建新的数据库

mysql -u root -p123456mysql>CREATE DATABASE 'gx_namc_omline' DEFAULT CHARACTER SET UTF8 COLLATE UTF8_GENERAL_CI;mysql>CREATE DATABASE IF NOT EXISTS tj_vote DEFAULT CHARSET utf8 COLLATE utf8_general_ci;

复制数据库,使用mysqldump及mysql的命令组合,一次性完成复制

mysqldump gx_namc -u root -pnsv_2018 --add-drop-table | mysql gx_namc_online -u root -pnsv_2018

注意-p123456参数的写法:-p后面直接跟密码,中间没有空格

以上是在同一台MySQL服务器上复制数据库的方法。如果要复制到远程另一台MySQL服务器上,可以使用mysql的“ -h 主机名/ip”参数。前提是mysql允许远程连接,且远程复制的传输效率和时间可以接受。

不在同一个mysql服务器上

mysqldump db1 -uroot -p123456 --add-drop-table | mysql -h 192.168.1.22 newdb -u root -p123456

刚刚开始研究mysql数据库时,经常遇到服务启动失败错误:

mysqld服务启动失败, Failed to restart mysqld.service: Unit not found.-bash-4.2# service mysqld restart Redirecting to /bin/systemctl restart mysqld.serviceFailed to restart mysqld.service: Unit not found.并不存在 mysqld 的服务,

复制代码

-bash-4.2# chkconfig --listNote: This output shows SysV services only and does not include native  systemd services. SysV configuration data might be overridden by native  systemd configuration.  If you want to list systemd services use 'systemctl list-unit-files'.  To see services enabled on particular target use  'systemctl list-dependencies [target]'.aegis           0:off   1:off   2:on    3:on    4:on    5:on    6:offagentwatch      0:off   1:off   2:on    3:on    4:on    5:on    6:offiprdump         0:off   1:off   2:on    3:on    4:on    5:on    6:offiprinit         0:off   1:off   2:on    3:on    4:on    5:on    6:offiprupdate       0:off   1:off   2:on    3:on    4:on    5:on    6:offjexec           0:off   1:on    2:on    3:on    4:on    5:on    6:offmysql.server    0:off   1:off   2:on    3:on    4:on    5:on    6:offnetconsole      0:off   1:off   2:off   3:off   4:off   5:off   6:offnetwork         0:off   1:off   2:on    3:on    4:on    5:on    6:off

可见,服务名不是mysqld 而是 mysql.server

于是:

-bash-4.2# service mysql.server restart Shutting down MySQL....[ OK ]Starting MySQL.[ OK ]

转载地址:http://ffzeo.baihongyu.com/

你可能感兴趣的文章
链表例题
查看>>
POJ-1321 棋盘问题 搜索
查看>>
HDU-4478 Where is the King 搜索
查看>>
将博客搬至CSDN
查看>>
大三学长带我学习JAVA。作业1. 第1讲.Java.SE入门、JDK的下载与安装、第一个Java程序、Java程序的编译与执行 大三学长带我学习JAVA。作业1....
查看>>
在ie9浏览器中ajax请求数据始终执行error的问题解决
查看>>
类和原型之工厂模式!
查看>>
hdu 5396 Expression
查看>>
时间选择器(js,css,html)
查看>>
xshell常用命令大全
查看>>
Day01_变量,数据类型_程序交互_流程控制
查看>>
POJ 3087 Shuffle'm Up 模拟,看着不像搜索啊
查看>>
你知道 GNU Binutils 吗?【binutils】
查看>>
OC与swift相互调用
查看>>
quartus ii 中文注释乱码解决办法
查看>>
Linux网卡配置与绑定
查看>>
java学习之路--String类方法的应用
查看>>
auto,register,static分析
查看>>
百度BAE JAVA环境项目部署和调试
查看>>
CSS盒模型
查看>>