linux+windows mysql导入导出sql文件

linux下

一、导出数据库用mysqldump命令(注意mysql的安装路径,即此命令的路径):
1、导出数据和表结构:
mysqldump -u用户名 -p密码 数据库名 > 数据库名.sql
#/usr/local/mysql/bin/   mysqldump -uroot -p abc > abc.sql
敲回车后会提示输入密码

2、只导出表结构
mysqldump -u用户名 -p密码 -d 数据库名 > 数据库名.sql
#/usr/local/mysql/bin/   mysqldump -uroot -p -d abc > abc.sql

注:/usr/local/mysql/bin/  --->  mysql的data目录


二、导入数据库
1、首先建空数据库
mysql>create database abc;

2、导入数据库
方法一:
(1)选择数据库
mysql>use abc;
(2)设置数据库编码
mysql>set names utf8;
(3)导入数据(注意sql文件的路径)
mysql>source /home/abc/abc.sql;
方法二:
mysql -u用户名 -p密码 数据库名 < 数据库名.sql
#mysql -uabc_f -p abc < abc.sql

window下

1.导出整个数据库
mysqldump -u 用户名 -p 数据库名 > 导出的文件名
mysqldump -u dbuser -p dbname > dbname.sql

2.导出一个表
mysqldump -u 用户名 -p 数据库名 表名> 导出的文件名
mysqldump -u dbuser -p dbname users> dbname_users.sql

3.导出一个数据库结构
mysqldump -u dbuser -p -d --add-drop-table dbname >d:/dbname_db.sql
-d 没有数据 --add-drop-table 在每个create语句之前增加一个drop table

4.导入数据库
常用source 命令
进入mysql数据库控制台,如
mysql -u root -p
mysql>use 数据库
然后使用source命令,后面参数为脚本文件(如这里用到的.sql)
mysql>source d:/dbname.sql

有的时候需要把在一张表中用 select 语句查询出来的结果保存到另一张结构相同的表中,可以有几种方法来实现:

在命令行下使用一对SQL语句完成该操作:

扫描二维码关注公众号,回复: 5311165 查看本文章

导出查询结果:Select语句 into outfile '保存路径+文件名';

导入查询结果:load data local infile '保存路径+文件名' into table 表明 character set utf8;

这里导出有可能会报错,

1

Error Code: 1290. The MySQL server is running with the --secure-file-priv option so it cannot execute this statement

  

这个是限制了导入导出目录,或者禁止了导入导出。

mysql中执行一下下边语句,查看 secure-file-priv 

1

show variables like '%secure%'

secure_file_prive=null  -- 限制mysqld 不允许导入导出

secure_file_priv=/tmp/  -- 限制mysqld的导入导出只能发生在/tmp/目录下

secure_file_priv=' '      --不对mysqld 的导入 导出做限制

根据自己需要修改配置文件即可

猜你喜欢

转载自blog.csdn.net/shardy0/article/details/87911448
今日推荐