最新文章专题视频专题问答1问答10问答100问答1000问答2000关键字专题1关键字专题50关键字专题500关键字专题1500TAG最新视频文章推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37视频文章20视频文章30视频文章40视频文章50视频文章60 视频文章70视频文章80视频文章90视频文章100视频文章120视频文章140 视频2关键字专题关键字专题tag2tag3文章专题文章专题2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章专题3
当前位置: 首页 - 科技 - 知识百科 - 正文

mysql远程机器导入导出数据锁表不锁表部分数据或全部

来源:动视网 责编:小采 时间:2020-11-09 09:09:55
文档

mysql远程机器导入导出数据锁表不锁表部分数据或全部

mysql远程机器导入导出数据锁表不锁表部分数据或全部:最近在使用mysql的时候,经常要遇到导出或者导入数据的情况,对于一些简单的,可以直接使用navicate直接导出结果,但是有很多时候,由于机器在远程端,并且是线上机器的情况下,在跳转一次跳转还链接不到mysql的时候,navicate就不能使用这种方法去导出了,搜
推荐度:
导读mysql远程机器导入导出数据锁表不锁表部分数据或全部:最近在使用mysql的时候,经常要遇到导出或者导入数据的情况,对于一些简单的,可以直接使用navicate直接导出结果,但是有很多时候,由于机器在远程端,并且是线上机器的情况下,在跳转一次跳转还链接不到mysql的时候,navicate就不能使用这种方法去导出了,搜


最近在使用mysql的时候,经常要遇到导出或者导入数据的情况,对于一些简单的,可以直接使用navicate直接导出结果,但是有很多时候,由于机器在远程端,并且是线上机器的情况下,在跳转一次跳转还链接不到mysql的时候,navicate就不能使用这种方法去导出了,搜索了网上的一些文章,大概将mysql导入导出的情况做个总结,如下:

一、导出数据库

mysqldump -h 127.0.0.1 -u name -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="id>10 limit 10000" >name.sql

上面一、二的情况均属于将所有的表或者库全部导出来,但是有些时候我们只是想要部分的数据,这部分数据符合某些条件,对于上述的结构就是

将数据库dbname里面的tablename表里面的 id>10 的数据取出来100条,导出到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的权限,只能尝试能否只导出数据,结果发现不太可以,再琢磨琢磨,再次mark一下,方便之后使用

七、数据库到导入

use dbname;
set names gbk;
source /d1/name/name.sql;

导入数据的时候只要连上数据库,使用source就可以,之前可以设置编码格式为gbk或者utf-8等,这样不会出现中文的乱码

八、授权

insert into mysql.user(User,Password) values("name",password("password"));

GRANT ALL PRIVILEGES ON *.* TO "name"@'%' IDENTIFIED BY 'password';

flush privileges;

show grants for 'test_group'@'%';

文档

mysql远程机器导入导出数据锁表不锁表部分数据或全部

mysql远程机器导入导出数据锁表不锁表部分数据或全部:最近在使用mysql的时候,经常要遇到导出或者导入数据的情况,对于一些简单的,可以直接使用navicate直接导出结果,但是有很多时候,由于机器在远程端,并且是线上机器的情况下,在跳转一次跳转还链接不到mysql的时候,navicate就不能使用这种方法去导出了,搜
推荐度:
  • 热门焦点

最新推荐

猜你喜欢

热门推荐

专题
Top