前言:
眼前各位老铁们对“mysql常用的两种注释方式分别是什么”可能比较关心,咱们都需要了解一些“mysql常用的两种注释方式分别是什么”的相关文章。那么小编在网络上收集了一些关于“mysql常用的两种注释方式分别是什么””的相关内容,希望我们能喜欢,小伙伴们一起来学习一下吧!概述:很多时候我们对mysql的备份有不同的需求,比如我们只需要对mysql数据库实例中的某一个库的数据、某一个库的表结构、某个表的数据、某个表的结构、多个表的数据、多个表的结构、或者是对一些指定前缀的表的数据、结构进行备份等等,为了不影响当前的数据写入,我们在操作的时候需要不能锁表 等等。
#备份所有数据库
1、mysqldump -h127.0.0.1 -P3306 -uroot -p --all-databases --master-data=2 --single-transaction --quick -R --events > /backup/all_db.sql
( 说明: --single-transaction 使用该参数,使备份innodb表时不锁表进行,但官方说法需要增加参数 --skip-opt ,因为--opt参数默认开启,包含了锁表方法,需要注意。
--master-data=2 备份的文件中增加注释的binlog文件,以及pos节点,以便增加主从时使用,当然,不需要的时候也可以不加此参数。
--quick 该参数用于加快数据备份。 )
#备份指定前缀的表
1、mysqldump -h127.0.0.1 -P33106 -uroot -p dedeutfdb $(mysql -h127.0.0.1 -P33106 -uroot -p -D dedeutfdb -Bse "show tables like 'dede_sys_%'") > /tmp/4.sql
#同上,最后的_需要转义,匹配带有dede_sys_的表
2、mysqldump -h127.0.0.1 -P33106 -uroot -p dedeutfdb $(mysql -h127.0.0.1 -P33106 -uroot -p -D dedeutfdb -Bse "show tables like 'dede_sys\_%'") > /tmp/4.sql
#导出指定的多个表(包含表数据和表结构)
1、mysqldump -h127.0.0.1 -P33106 -uroot -p dedeutfdb --tables dede_sys_enum dede_sys_module > /tmp/2tables01.sql (会锁表)
2、mysqldump -h127.0.0.1 -P33106 -uroot -p dedeutfdb --single-transaction --skip-opt --tables dede_sys_enum dede_sys_module > /tmp/2tables02.sql (不锁表)
#只导出指定数据库的 数据内容 或 表结构
-t, --no-create-info Don't write table creation info.
1、mysqldump -h127.0.0.1 -P33106 -uroot -p -t dedeutfdb > /tmp/nocreate01.sql
-d, --no-data No row information.
1、mysqldump -h127.0.0.1 -P33106 -uroot -p -d dedeutfdb > /tmp/nodata01.sql
2、mysqldump -h127.0.0.1 -P33106 -uroot -p --skip-opt -d dedeutfdb > /tmp/nodata02.sql (加参数--skip-opt,没有“DROP TABLE IF EXISTS”等语句)
#备份多个指定的数据表的表结构(不包含数据)
1、mysqldump -h127.0.0.1 -P33106 -uroot -p -d dedeutfdb --tables dede_sys_enum dede_sys_module > /tmp/2tables-nodata01.sql
#备份多个指定的数据表的数据(不包含创建表结构)
1、mysqldump -h127.0.0.1 -P33106 -uroot -p -t dedeutfdb --tables dede_sys_enum dede_sys_module > /tmp/2tables-nocreate01.sql
2、mysqldump -h127.0.0.1 -P33106 -uroot -p -t dedeutfdb --single-transaction --skip-opt --tables dede_sys_enum dede_sys_module > /tmp/2tables-nocreate01.sql (不锁表操作方法,但插入数据方式有变化,也可以下面3的方法)
3、mysqldump -h127.0.0.1 -P33106 -uroot -p -t dedeutfdb --single-transaction --skip-add-drop-table --skip-add-locks --tables dede_sys_enum dede_sys_module > /tmp/2tables-nocreate01.sql
#排除表
1、mysqldump -h127.0.0.1 -P33106 -uroot -p dedeutfdb --ignore-table=dedeutfdb.dede_addonarticle > j01.sql (可以多个--ignore-table=dedeutfdb. 排除多个表)
#备份所有数据库
1、mysqldump -h127.0.0.1 -uroot -pPWD123 -A > db-all.sql
// -A, --all-databases // 所有数据库 , 包括mysql等
#备份指定的某个或几个数据库
2、mysqldump -h127.0.0.1 -uroot -pPWD123 -B db01 db02 > db1-2.sql
-B, --databases // 指定数据库 ,备份多个库时必须指定这个参数,否则会认为db02是db01中的表。
#备份一个库,使用-B, --databases参数的区别
1、mysqldump -h127.0.0.1 -uroot -pPWD123 -B db01 > db01.sql
2、mysqldump -h127.0.0.1 -uroot -pPWD123 db01 > db01.sql
(以上2个方式都是备份单个数据库,但不同的是加参数时,会在sql中增加一下语句,
CREATE DATABASE /*!32312 IF NOT EXISTS*/ `dedeutfdb` /*!40100 DEFAULT CHARACTER SET utf8 */;
USE `dedeutfdb`;
)
标签: #mysql常用的两种注释方式分别是什么