Mysql备份恢复(mysqldump)

直接复制

-- 建新库
create database `caimei@20180517` default character set utf8 collate utf8_general_ci;
-- 本地
mysqldump caimei -u root -p$pass --add-drop-table | mysql caimei@20180517 -u root -p$pass
-- 远程
mysqldump db1 -uroot -p$pass --add-drop-table | mysql -h 192.168.1.22 newdb -u root -p$pass

导出

导出全库备份

[root@caimeidev2 /]# mysqldump -uusermane -ppassword -h127.0.0.1 -P3306 --routines --default-character-set=utf8 --lock-all-tables --add-drop-database -A > db.all.sql

仅导出结构

[root@caimeidev2 /]# mysqldump -u[username] -p[password] -h [ip] -P [port] -d [dn_name] [table_name] > tmp.sql;

仅导出数据

[root@caimeidev2 /]# mysqldump -u[username] -p[password] -h [ip] -P [port] -t [dn_name] [table_name] > tmp.sql;

注意:-d 仅导出结构,-t 仅导出数据,不加-d-t,导出结构和数据

导出指定数据库

[root@caimeidev2 /]# mysqldump -uusermane -ppassword -h127.0.0.1 -P3306 --routines --default-character-set=utf8 db_name > db_name.sql

导出数据到文本文件

注:各数据值之间用"制表符"分隔

[root@caimeidev2 /]# mysql -u$USER -p$PASSWD -h127.0.0.1 -P3306 --default-character-set=utf8 --skip-column-names -B -e 'select user,host,password from mysql.user;' > mysql_user.txt

导出数据到csv文件

mysql> select user,host from mysql.user into outfile '/tmp/mysql_user.csv' fields terminated by ',';

注:如果报错,ERROR:1064,设置一下配置文件my.cnf,mysqld模块下面设置secure_file_priv=/指定一个目录路径

导出存储过程

mysqldump -uuser_name -p -n -t -d -R db_name > procedure_name.sql

恢复

mysql恢复

恢复全库

[root@caimeidev2 backup]# mysql -u$USER -p$PASSWD -h127.0.0.1 -P3306 --default-character-set=utf8 < db.all.sql

恢复某库

[root@caimeidev2 backup]# mysql -uroot -p --default-character-set=utf8 rap_db < /data/backup/rap_db.20171115.sql

source恢复

恢复全库

[root@caimeidev2 backup]# mysql -u$USER -p$PASSWD -h127.0.0.1 -P3306 --default-character-set=utf8
......
mysql> source /tmp/db.all.sql;

恢复某库

[root@caimeidev2 backup]# mysql -u$USER -p$PASSWD -h127.0.0.1 -P3306 --default-character-set=utf8
......
mysql> use mysql;
mysql> source /tmp/db.table.sql;

恢复txt格式文件数据

注:需要FILE权限,各数据值之间用"制表符"分隔

[root@caimeidev2 backup]# mysql -u$USER -p$PASSWD -h127.0.0.1 -P3306 --default-character-set=utf8
......
mysql> use mysql;
mysql> load data infile '/tmp/mysql_user.txt' into table user;

恢复csv格式文件数据

mysql -u$USER -p$PASSWD -h127.0.0.1 -P3306 --default-character-set=utf8
......
mysql> use mysql;
mysql> load data infile '/tmp/mysql_user.csv' into table user fields terminated by ',';

load data语法结构参考:http://www.jb51.net/article/58093.htm

恢复存储过程

[root@caimeidev2 backup]# mysqldump -uuser_name -ppassword -n -t -d -R --triggers=false db_name > ./procedure_name.sql

如果有如下错误:
ErrorCode:1418 This function has none of DETERMINISTIC, NOSQL, or READS SQL DATA inits declaration and binary logging is enabled (you *might* want to use the less safe log_bin_trust_function_creators variable)

修改my.cnf配置文件:

vim /etc/my.cnf
在mysqld下面添加
log-bin-trust-function-creators=1

附录

  • MySQL连接
    -uuser_name 用户名
    -ppassword 密码
    -h127.0.0.1 如果连接远程服务器,请用对应的主机名或者IP地址替换
    -P3306 端口
    –default-character-set=utf8 指定字符集

  • mysql参数
    –skip-column-names 不显示数据列的名字
    -B 以批处理的方式运行mysql程序.查询结果将显示为制表符间隔格式.
    -e 执行命令后,退出

  • mysqldump参数
    -A 全库备份
    –routines 备份存储过程和函数
    –default-character-set=utf8 设置字符集
    –lock-all-tables 全局一致性锁
    –add-drop-database 在每次执行建表语句之前,先执行DROP TABLE IF EXIST语句
    –no-create-db 不输出CREATE DATABASE语句
    –no-create-info 不输出CREATE TABLE语句
    –databases 将后面的参数都解析为库名
    –tables 第一个参数为库名 后续为表名
    –no-data 不导出数据

  • load data
    如果load data语句不带local关键字,就在mysql的服务器上直接读取文件,且要具有file权限.
    如果带local关键字,就在客户端本地读取数据文件,通过网络传到mysql.
    load data语句,同样被记录到binlog,不过是内部的机制.

Mysql备份恢复(mysqldump)相关推荐

  1. MySQL备份恢复-mysqldump/xbk

    MySQL备份恢复 1.介绍 最后一根救命稻草,备份主要是用来恢复数据 2.DBA在备份恢复工作职责 2.1设计备份策略和恢复策略 1.备份策略 1)备份的时间 凌晨,根据公司的实际业务情况,一般选择 ...

  2. mysql的备份恢复原理_MySQL备份恢复-mysqldump原理

    +++++++++++++++++++++++++++++++++++++++++++ 标题:mysqldump对MySQL数据库备份恢复原理 时间:2019年2月23日 内容:mysqldump工具 ...

  3. 零基础带你学习MySQL—备份恢复数据库(三)

    零基础带你学习MySQL-备份恢复数据库(三) 一.备份数据库 二.恢复数据库 先删除数据库zs_db03 恢复数据库zs_db03 课堂练习 方法一:傻瓜式办法 直接Ctrlcv 方法二:命令行方法 ...

  4. 【数据库运维】MYSQL备份恢复管理(上)

    目录 MYSQL备份恢复管理 一,备份类型 二,逻辑备份优缺点 三,MySQL备份内容 四,MySQL备份工具 五,MySQL备份策略 1,策略一:直接拷贝数据库文件 案例:直接拷贝备份数据库comp ...

  5. MySQL备份恢复练习

    MySQL备份恢复练习 素材 备份恢复要求 1. 备份数据库school到/backup目录 2. 备份数据库school为带删除表的格式,能够让该备份覆盖已有数据库而不需要手动删除原有数据库 3. ...

  6. Mysql 备份恢复看这一篇就够了

    Mysql 备份恢复 一.备份分类.备份策略 1.1 造成数据丢失的原因: 程序错误 人为操作错误 运算错误 磁盘故障 灾难(如火灾.地震)和盗窃 1.2 数据库备份的分类 1)物理备份:对数据库操作 ...

  7. mysql导入分卷_php实现mysql备份恢复分卷处理的方法_PHP

    本文实例讲述了php实现mysql备份恢复分卷处理的方法.分享给大家供大家参考.具体分析如下: 分卷处理就是把握们要处理的数据分成一个个小文件进行处理了,这里我来给大家介绍一个php mysql备份恢 ...

  8. 刘子佼 mysql 下载_MySQL数据管理之备份恢复案例解析 23讲 Mysql备份恢复实战 视频教程...

    课程名称:MySQL数据管理之备份恢复案例解析 23讲 Mysql备份恢复实战课程简介: 课程独家解析MySQL 5.6最新特性,课程讲师刘子佼讲课风格幽默,善于与人沟通,善于组建和协调团队攻克技术难 ...

  9. MySQL备份恢复之mysqldump恢复

    mysqldump恢复 mysqldump恢复 恢复备份+binlog 示例: 1.做好了对于test库的备份2.做好备份以后,又做了几个操作 (1)往test库的t1表插入了几行数据(2)将t1表 ...

最新文章

  1. ICinsights:中国芯片难达成既定的2025目标
  2. html数据提交到python,将html页面数据发送到python flask variab
  3. java服务注册中心有哪些_Spring Cloud服务注册中心简述
  4. 解决物体位姿估计中遮挡、对称、无纹理物体的方法
  5. arm 大端还是小端_用C/C++带您了解计算机中大端小端之谜
  6. centso7.5 安装postman(实测)
  7. [抄]人是怎么废掉的
  8. 在centos6.5中安装reids
  9. 阿里云服务器是如何计费的?有哪些计费方式
  10. JAVA-初步认识-第七章-this关键字内存图解
  11. Java线程池关闭1-shutdown和isTerminated
  12. word中图片为嵌入式格式时显示不全_word插入图片嵌入式 word图片显示不全
  13. Grafana启动失败报错:Grafana-server Init Failed: Could not find config defaults, make sure homepath command
  14. 押注AI大装置,商汤的“月亮与六便士”
  15. nginx的多域http、https同时访问配置及http重定向https
  16. PCB制造常用的13种测试方法,你了解几种?
  17. Activity的生命周期和启动模式--Activity的生命周期的全面分析
  18. [动态规划] 区间DP
  19. 【Parsec + ZeroTier】校园网内免费远程桌面(支持游戏)
  20. 如何将喜马拉雅FM的音频下载下来保存

热门文章

  1. 关于大学生课余时间分配利用的调查报告
  2. 数据分析师8大经典问题
  3. Android Bluetooth蓝牙开发\蓝牙协议\蓝牙通信例子_Android支持蓝牙4.0版本_BLE开发
  4. php使用grpc简单教程
  5. 金融事业部QA培训体系
  6. MISRA-C那些事儿
  7. L1-020 帅到没朋友(Python3)
  8. 使用DiskGenius(原DiskMan)修复损坏的硬盘分区
  9. 安卓开发就等同于Java编程么?不懂的进来看看吧
  10. 测试用例常用的设计方法