数据库导出到文件

导出sql文件:

mysqldump -h localhost -uroot -p123 test > d:\test.sql //windows
mysqldump -h localhost -uroot -p test > /tmp/test.sql //mac和linux
//win下可以直接输入密码,但是mac下不行,必须另输

将test数据库导出到d盘下面的test.sql文件中。得到的是重新建立一个一模一样的test数据库的sql语句。

mysqldump -h localhost -uroot -p123 test stu > d:\test.sql //windows
mysqldump -h localhost -uroot -p test stu > /tmp/test.sql //mac和linux

将test数据库中的stu数据表导出到外部文件中。得到是重新创建一个一模一样的stu数据表的sql语句。

导出txt文件:

mysqldump -h localhost -uroot -p -T D:\data\mysql test stu [option] //windows
mysqldump -h localhost -uroot -p -T /tmp test stu [option] //mac和linux
//关于[option]看
//
或者进入mysql里面
mysql> use test
mysql> select * from stu into outfile 'd:\\data\\stu.txt' [option]; //必须是双反斜杠
//option 介绍 转自
//
//FIELDS TERMINATED BY ‘字符串’:设置字符串为字段的分割符,默认值为 \t
//FIELDS ENCLOSED BY ‘字符’:设置字符串括上char varchar text等字符型字段,默认值为 无任何符号
//FIELDS OPTIONALLY ENCLOSED BY ‘字符’:设置字符串括上字段的值,默认值为 无任何符号
//LINES STARTING BY ‘字符串’:设置每一行开头的字符,默认值为 无任何字符
//FIELDS ESCAPED BY ‘字符’:设置转义字符,默认值为 \
//LINES TERMINATED BY ‘字符串’:设置每行结束符,默认值为 \n

上面这个语句在执行的时候可能会报错,因为d:\data\文件夹没有被设置为mysql传输文件指定的文件夹。一般刚安装时这个文件夹为NULL,我们需要自己设置。

下面设置为windows:

mysql DDl转驼峰 mysql 导出ddl_mysql DDl转驼峰

secure_file_priv="D:\data\" 表示d盘下的data文件夹可以接受mysql的文件传输

secure_file_priv=""    等于空时,表示文件传输不受限制

secure_file_priv= NULL 表示不能进行文件传输。

设置方法就是:

1.退出mysql,关闭mysql服务

2.打开my.ini

3.在[mysqld]后面添加一行,如图所示

mysql DDl转驼峰 mysql 导出ddl_sql_02

4.保存,重启mysql服务。

5.再次输入上面的语句就可以了(注意语句中的文件要用"\\")

通过查看show variables like '%secure%' 就可以知道设置是否成功。

mysql DDl转驼峰 mysql 导出ddl_mysql DDl转驼峰

下面的设置为mac:

1.退出mysql,关闭mysql服务

2.打开my.cnf (注意,mac中的my.cnf是在etc文件下的,不是在mysql文件夹中的。linux中我步确定放在哪里)

3.在[mysqld]后面添加一行,如图所示

mysql DDl转驼峰 mysql 导出ddl_mysql数据库d导出数据_04

4.保存,重启mysql服务。

5.再次输入上面的语句就可以了

数据库从导入文件

导入sql:

必须先创建test2数据库

mysql> create database test2

mysql -h localhost -uroot -p123 test2

或者进入mysql

mysql> use test3

mysql> source D:\data\database\mysql\test.sql //windows

mysql> source /tmp/test.sql //mac

导入txt:

譬如我有这么一张表

序号,名字,成绩

1,张三,100

2,hello,234

3,张三,100

4,王五,100

6,天才,99

7,aaa,22

8,baa,22

必须先创建符合文本数据规范的数据表

create table import (id int(10),name varchar(128), study int(10));

然后导入

load data infile 'D:\\data\\database\\mysql\\text.txt'
into table import
fields terminated by '\,' //分隔符 这个就是[option]中的一种
ignore 1 lines //忽略第一行(标题行)
(id,name,study);