千家信息网

数据导入导出

发表于:2024-10-03 作者:千家信息网编辑
千家信息网最后更新 2024年10月03日,数据导入导出设置数据导入/导出使用的目录1.查看默认使用目录及目录是否存在。mysql>show variables like "secure_file_priv";secure_file_priv
千家信息网最后更新 2024年10月03日数据导入导出

数据导入导出
设置数据导入/导出使用的目录
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 :描述信息 :家目录 :shellmysql>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";

0