mysqldump全库备份(使用mysqldump备份数据库)
本文目录
使用mysqldump备份数据库
通用规律只有使用 --all-databases (-A) 会 ERROR 1356,那就看看他到底备份了什么东西。于是喊上同事一起 less 看了下,上下扫了两眼。突然发现:1. 备份 SQL 文件里 DROP 掉了 mysql.proc;2. 后CREATE了一个新的 mysql.proc;3. LOCK TABLES 和 UNLOCK TABLES 中间居然没有备份 CREATE ROUTINE 任何数据?这不就是相当于每次导入全备都给我一个没有任何 sys schema routines 的全新 mysql.proc 表?那这不就异常的尴尬?---- Table structure for table `proc`------ Dumping data for table `proc`-真相大白在官方文档【sys-schema-usage】官方文档明确的告诉我们不会备份 sys 库。但在使用 mysqldump 在执行 --all-databases 会清空 mysql.proc 导致 sys 无法正常使用;这是一个 BUG,并且只存在于 MySQL 5.7.x !1、mysql_upgrade install or upgrade sys schema这个方案适用于 sys 库已经因为 mysqldump 导入而损坏的情况下使用。注意:mysql_upgrade 在修理 sys 库的同时,还修理 mysql 库和用户库表(期间加锁且速度一般),有极小可能会误伤;使用 mysql_upgrade 的时候要加上 --upgrade-system-tables,不然会扫描用户库表。2、全备时同时备份 sys 库这个方案适用于需要还原的数据库,sys 库也不太正常的情况下使用;在全备后额外再备份一份 sys 库用于修复。注意:不适用于做主从时使用它。3、使用 databases 全备这个方案适用于所有场景的全备需求,100% 安全。4、使用 mysql-sys 开源代码如果你的数据库 sys 全部中招了,又是生产库。那你只能用这个方法;mysql-sys:
mysql中备份数据库的命令是什么
常规的mysql备份使用命令是 mysqldump命令用法如下,mysqldump 》 脚本名例如:备份所有数据库:mysqldump -uroot -p --all-databases 》 /backup/mysqldump/all.db备份指定数据库:mysqldump -uroot -p test 》 /backup/mysqldump/test.db备份指定数据库指定表(多个表以空格间隔)mysqldump -uroot -p mysql db event 》 /backup/mysqldump/2table.db备份指定数据库排除某些表mysqldump -uroot -p test --ignore-table=test.t1 --ignore-table=test.t2 》 /backup/mysqldump/test2.db还原命令例如:mysqladmin -uroot -p create db_name mysql -uroot -p db_name 《 /backup/mysqldump/db_name.db注:在导入备份数据库前,db_name如果没有,是需要创建的; 而且与db_name.db中数据库名是一样的才可以导入。
mysql备份方式有哪些
数据库最直接的备份方法就是使用自带的mysqldump命令进行备份。1、 mysqldump命令备份数据在MySQL中提供了命令行导出数据库数据以及文件的一种方便的工具mysqldump,我们可以通过命令行直接实现数据库内容的导出dump,首先我们简单了解一下mysqldump命令用法:#MySQLdump常用mysqldump -u root -p --databases 数据库1 数据库2 》 xxx.sql2、 mysqldump常用操作实例2.1备份全部数据库的数据和结构mysqldump -uroot -p123456 -A 》 /data/mysqlDump/mydb.sql2.2备份全部数据库的结构(加 -d 参数)mysqldump -uroot -p123456 -A -d 》 /data/mysqlDump/mydb.sql2.3 备份全部数据库的数据(加 -t 参数)mysqldump -uroot -p123456 -A -t 》 /data/mysqlDump/mydb.sql2.4 备份单个数据库的数据和结构(,数据库名mydb)mysqldump -uroot-p123456 mydb 》 /data/mysqlDump/mydb.sql2.5 备份单个数据库的结构mysqldump -uroot -p123456 mydb -d 》 /data/mysqlDump/mydb.sql2.6 备份单个数据库的数据mysqldump -uroot -p123456 mydb -t 》 /data/mysqlDump/mydb.sql22.7 备份多个表的数据和结构(数据,结构的单独备份方法与上同)mysqldump -uroot -p123456 mydb t1 t2 》 /data/mysqlDump/mydb.sql2.8 一次备份多个数据库mysqldump -uroot -p123456 --databases db1 db2 》 /data/mysqlDump/mydb.sql
备份或导出数据库命令mysqldump怎么使用
通用规律只有使用 --all-databases (-A) 会 ERROR 1356,那就看看他到底备份了什么东西。于是喊上同事一起 less 看了下,上下扫了两眼。突然发现:1. 备份 SQL 文件里 DROP 掉了 mysql.proc;2. 后CREATE了一个新的 mysql.proc;3. LOCK TABLES 和 UNLOCK TABLES 中间居然没有备份 CREATE ROUTINE 任何数据?这不就是相当于每次导入全备都给我一个没有任何 sys schema routines 的全新 mysql.proc 表?那这不就异常的尴尬?---- Table structure for table `proc`------ Dumping data for table `proc`-真相大白在官方文档【sys-schema-usage】官方文档明确的告诉我们不会备份 sys 库。但在使用 mysqldump 在执行 --all-databases 会清空 mysql.proc 导致 sys 无法正常使用;这是一个 BUG,并且只存在于 MySQL 5.7.x !1、mysql_upgrade install or upgrade sys schema这个方案适用于 sys 库已经因为 mysqldump 导入而损坏的情况下使用。注意:mysql_upgrade 在修理 sys 库的同时,还修理 mysql 库和用户库表(期间加锁且速度一般),有极小可能会误伤;使用 mysql_upgrade 的时候要加上 --upgrade-system-tables,不然会扫描用户库表。2、全备时同时备份 sys 库这个方案适用于需要还原的数据库,sys 库也不太正常的情况下使用;在全备后额外再备份一份 sys 库用于修复。注意:不适用于做主从时使用它。3、使用 databases 全备这个方案适用于所有场景的全备需求,100% 安全。4、使用 mysql-sys 开源代码如果你的数据库 sys 全部中招了,又是生产库。那你只能用这个方法;mysql-sys:
更多文章:

自媒体自学网网站(有没有什么适合学习的自媒体平台年轻人用的那种,想学些基本的新媒体知识)
2025年2月20日 06:30

solitaire(Carpenters的《Solitaire》 歌词)
2025年4月11日 12:20

请问CCD相机的smear效应怎么理解?ccd指标smear含义,有啥意义,dB是如何算出来的
2025年3月5日 00:30

电脑回收站删除的文件怎么恢复(电脑的回收站清空了怎么找回文件)
2025年2月14日 16:30

华为p30后面的pro是什么意思?approved to credit是什么意思
2025年4月10日 15:00

时间复杂度o(n)(某算法的时间复杂度为O(n),表明该算法的:)
2025年2月8日 22:50

glimpse什么意思(glance与glimpse的区别)
2025年2月18日 20:20

什么是soap接口(REST URL与SOAP URL有什么区别)
2025年3月13日 02:30

破甲弹(HEAT)会跳弹吗?cube escape theatre攻略那个格子怎么移
2025年4月8日 18:20

audiolab音频编辑器(傲立Audiolab M-DAC 解码器值得我买吗)
2025年2月15日 04:30