网站首页 > 数据编程 正文
概述
最近在使用mysql的时候,经常要遇到导出或者导入数据的情况,对于一些简单的,可以直接使用navicate直接导出结果,但是有很多时候,由于机器在远程端,并且是线上机器的情况下,然后网络不通的话,navicate就不能使用这种方法去导出了,刚好之前没把各个命令做一个总结,所以今天单独对mysqlmysqldump导出的情况做个总结。
一、导出数据库
mysqldump -h 127.0.0.1 -u dbname -p dbname >name.sql
将127.0.0.1的数据库dbname导出到name.sql文件里面
二、导出数据库的某张表
mysqldump -h 127.0.0.1 -u username -ppassword dbname tablename >name.sql
将ip 127.0.0.1上面的数据库dbname里面的tablename表导出到name.sql文件里面
三、导出数据库的某张表的符合某些条件的数据
mysqldump -h 127.0.0.1 -u username -ppassword dbname tablename --where="user_id<10010" >name.sql
上面一、二的情况均属于将所有的表或者库全部导出来,但是有些时候我们只是想要部分的数据,这部分数据符合某些条件,对于上述的结构就是将数据库dbname里面的tablename表里面的user_id小于10010的数据取出来10条,导出到name.sql文件里面
四、导出数据库的某张表不锁表
mysqldump -h 127.0.0.1 -u username -ppassword --single-transaction dbname tablename>name.sql
有时候导出的时候并没有锁表的权限,例如如果你只是一个只读权限的话,很可能没有锁表的权限,这个时候只要加上一句 --single-transaction 就可以不锁表进行导出
上述对于一、二、三来说都会对数据库进行锁表,加上此命令即可达到不锁表导数据的目的
五、导出数据库的某张表的表结构,不导出数据
mysqldump -h 127.0.0.1 -u username -ppassword --single-transaction -d dbname tablename>name.sql
有时候我们并不是要导出数据,只是要导出表结构,比如说你要按照这个表结构完全去复制创建这个表结构,这种情况下可以使用的方法很多,比如可以直接连上数据库,使用show create table tablename命令,也可以得到建表的语句;此处只是提供另外一种导出表结构的办法,如果要只导出表结构的话,可以加 -d就可以。
六、导出数据库的某张表的数据,不导出结构
mysqldump -h 127.0.0.1 -u username -ppassword --single-transaction -t dbname tablename>name.sql
如果要只导出数据,但是不导出表结构的话,使用-t就可以达到目的,本来使用这一句的目的是为了导出数据库里面的视图,因为没有show create view的权限,只能尝试能否只导出数据,结果发现不太可以,后面再研究下。
关于mysqldump经常用的一些命令就总结到这里了,大家也可以自己测试一下,其中一些参数是可以互相组合的。后面会分享更多devops和DBA方面的内容,感兴趣的朋友可以关注一下~
猜你喜欢
- 2024-09-29 阿里面试官:你来说说你了解的 MySQL 逻辑备份与恢复测试
- 2024-09-29 mysqldump简单解析 mysqldump参数详解
- 2024-09-29 分享12道mysql 运维dba经典面试题,听说能答对一半月薪10k+
- 2024-09-29 mysql导入导出命令 mysql数据导入导出命令
- 2024-09-29 mysql 一些使用场景技巧(二) mysql的使用场景
- 2024-09-29 史上最全的BAT Mysql面试题在这里
- 2024-09-29 那天删库跑路后,在牢里写的MySQL数据恢复大法……
- 2024-09-29 「玩转MySQL之十」InnoDB Buffer Pool详解
- 2024-09-29 程序员入门MySQL—备份与恢复 mysql备份数据恢复
- 2024-09-29 MySQL的常用数据库操作命令 mysql数据库基本语法
- 最近发表
- 标签列表
-
- oraclepdb (60)
- vncviewermac (62)
- sqlservermax (58)
- mysqlcanal (61)
- mysql:commandnotfound (56)
- mysqlexplainfiltered (56)
- python位运算符 (59)
- linuxfind-name模糊查询文件 (60)
- centos7systemctl (76)
- mysqlgt (55)
- nc命令 (66)
- dockerfilecp (55)
- 单行子查询返回多个行解决办法 (58)
- ssh-2.0-openssh_7.4 (56)
- vue图片裁剪 (59)
- anyvideoconverterpro (62)
- pscache (58)
- hdfsfsck (63)
- nacos源码 (69)
- lambdawrapper (60)
- 安装jdk11 (60)
- 什么是聚簇索引 (62)
- 锁升级过程 (58)
- bootcdn (64)
- axurerp9mac破解版 (58)