一、数据导入
1.什么是导入:把系统文件的内容保存到数据库服务器的表里
2.导入数据时的注意事项?
-表中字段的个数要和文件列中的个数相等
-字段的类型要和文件中列的值匹配
3.导入数据命令格式:
load data infile '文件名' into table 表名 fields terminated by '分隔符' lines terminated by '\n';
*terminated by ‘分隔符’:指定列的分隔符 *lines terminated by ‘\n’:行的分隔符一般都是用’\n'(回车键) 3.例子: 1.1把系统用户信息保存到数据库服务器的usertab表里 ㈠首先创建usertab表用来存放系统用户信息
create database db100;
create table db100.usertab(
username varchar(30),
password char(1),
uid samllint(2),
gid samllint(2),
comment varchar(50),
homedir varchar(60),
shell varchar(30),
index (username)
);
㈡将/etc/passwd文件导入到usertab表里
<pre class="brush:bash">
mysql> load data infile "/etc/passwd" into table db100.usertab fields terminated by ":" lines terminated by "\n";
Query OK, 25 rows affected (0.00 sec)
Records: 25 Deleted: 0 Skipped: 0 Warnings: 0
㈢查询是否导入成功
二、数据导出 1.什么是导出:把数据库表里的记录保存到系统文件里 吧mysql库下user表的所有记录保存到系统/tmp/user.txt文件里
2.导出的注意事项? 导出的内容有sql语句决定,若不指定路径,默认会放在执行导出命令时所在库对应的数据库目录下,应确保mysql用户对目标文件夹有写权限
3.导出数据命令格式:(不指定路径的话,默认文件保存在当前所在数据库的目录下)
select * from mysql.user into outfile '文件路径'
#指定列的分隔符
select user,host,password from mysql.user into outfile '文件名' fields terminated by "###";
#指定行的分隔符
select user,host,password from mysql.user into outfile '文件名' lines terminated by "!!!";
4.例子 导出mysql.user表到/tmp/user.txt
mysql> select * from mysql.user into outfile '/tmp/user.txt';
Query OK, 15 rows affected (0.00 sec)
把usertab表的所有记录都保存在/mydbdir/user.txt文件里 mysql> use db100; Database changed mysql> select * from usertab into outfile “/mydbdir/user.txt”; Query OK, 25 rows affected (0.00 sec)