数据导入导出
设置数据导入/导出使用的目录
1.查看默认使用目录及目录是否存在。
mysql>show variables like "secure_file_priv";
secure_file_priv /var/lib/mysql-files/
2.修改目录及查看修改结果。
#mkdir /abc
#chown mysql /abc
#vim /etc/my.cnf
[mysqld]
....
secure_file_priv="/abc"
#systemctl restart mysqld
mysql>show variables like "secure_file_priv";
secure_file_priv /abc
SQL数据导入
基本用法
格式:load data infile "导入/导出使用的目录名/文件名" into table 库.表名 fields terminated by "字段间隔符号" lines terminated by "\n";
注意事项:
1.字符按分隔符要与文件内容的一致。
2.指定导入文件的绝对路径。
3.导入数据的表字段类型要与文件字段匹配。
4.禁用SElinux
例:
1.把文件的内容存储复制到导入/导出使用的目录。
#cp /etc/passwd /var/lib/mysql-files/
2.创建表字段类型要与文件字段匹配。
3. /etc/passwd 字段分为 用户名:密码占位符 :uid :gid :描述信息 :家目录 :shell
mysql>create database passwddb;
mysql>create table passwddb.test(
>user char(20),
>password char(1),
>uid int(2),
>gid int(2),
>comment varchat(50),
>homedir char(30),
>shell char(30),
>index(user)
>);
mysql>desc passwddb.test;
3.数据导入
mysql>oad data infile "/var/lib/mysql-files/passwd" into table passwddb.test fields terminated by ":" lines terminated by "\n";
4.可以在给表字段添加行号。
mysql>alter table passwddb.test add id int(2) zerofill primary key auto_increment first; //(zerofil以0补位)
5.查看
mysql>select id,name,uid from passwddb.test;
SQL数据导出
基本用法
格式:select查询的结果 into outfile "导入/导出使用的目录名/取一个文件名" fields terminated by "分隔符" lines terminated by "\n";
注意事项:
1.导出的内容由sql查询语句决定。
2.禁用SElinux。
例:
导出passwddb库test表中uid小于100的用户记录。
mysql>select * from passwddb.test where uid < 100 into outfile "/var/lib/mysql-files/abc.txt";
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。