MySQL数据导入导出(用于个人学习与回顾)
发表于:2026-10-31 作者:千家信息网编辑
千家信息网最后更新 2026年10月31日,该实例将练习MySQL的导入导出操作实例:将/etc/passwd文件导入userdb库user表并给每条记录加编号将userdb库user表中UID小于100的前10条记录导出,存为/mydata/
千家信息网最后更新 2026年10月31日MySQL数据导入导出(用于个人学习与回顾)
该实例将练习MySQL的导入导出操作
实例:
将/etc/passwd文件导入userdb库user表并给每条记录加编号
将userdb库user表中UID小于100的前10条记录导出,存为/mydata/user1.txt文件
新建userdb库,切换到userdb库,并且设置如下字段;
mysql> create database userdb;Query OK, 1 row affected (0.00 sec)mysql> use userdb;Database changedmysql> create table user( -> username varchar(24) not null, -> password varchar(48) default 'x', -> uid int(5) not null, -> gid int(5) not null, -> fullname varchar(48), -> homedir varchar(64) not null, -> shell varchar(24) not null -> );Query OK, 0 rows affected (0.01 sec)mysql> desc user;+----------+-------------+------+-----+---------+-------+| Field | Type | Null | Key | Default | Extra |+----------+-------------+------+-----+---------+-------+| username | varchar(24) | NO | | NULL | || password | varchar(48) | YES | | x | || uid | int(5) | NO | | NULL | || gid | int(5) | NO | | NULL | || fullname | varchar(48) | YES | | NULL | || homedir | varchar(64) | NO | | NULL | || shell | varchar(24) | NO | | NULL | |+----------+-------------+------+-----+---------+-------+7 rows in set (0.01 sec)
注:在MySQL 5.7.6版本之后,导入文件只能在secure_file_priv指定的文件夹下。如果直接导入会报错。执行show variables like '%secure%'命令显示文件目录:
mysql> load data infile '/etc/passwd' into table user fields terminated by ':';ERROR 1290 (HY000): The MySQL server is running with the --secure-file-priv option so it cannot execute this statementmysql> show variables like '%secure%';+--------------------------+-----------------------+| Variable_name | Value |+--------------------------+-----------------------+| require_secure_transport | OFF || secure_auth | ON || secure_file_priv | /var/lib/mysql-files/ |+--------------------------+-----------------------+3 rows in set (0.00 sec)
执行导入操作
-将/etc/passwd文件复制到/var/lib/mysql-files/目录下,
-读取/var/lib/mysql-files/passwd文件内容,以":"为分隔,导入到user表中:
[root@host50 ~]#cp /etc/passwd /var/lib/mysql-files/mysql> LOAD DATA INFILE '/var/lib/mysql-files/passwd'-> INTO TABLE user-> FIELDS TERMINATED BY ':';Query OK, 42 rows affected (0.11 sec)Records: 42 Deleted: 0 Skipped: 0 Warnings: 0
注:上述操作中省略了行分隔 LINES TERMINATED BY '\n',因为这是默认的情况(每行一条原始记录),除非需要以其他字符分割行,才需要用到这个。
确认导入结果
mysql> select count(*) from user;+----------+| count(*) |+----------+| 42 |+----------+1 row in set (0.00 sec)mysql> select * from user limit 10;+----------+----------+-----+-----+----------+-----------------+----------------+| username | password | uid | gid | fullname | homedir | shell |+----------+----------+-----+-----+----------+-----------------+----------------+| root | x | 0 | 0 | root | /root | /bin/bash || bin | x | 1 | 1 | bin | /bin | /sbin/nologin || daemon | x | 2 | 2 | daemon | /sbin | /sbin/nologin || adm | x | 3 | 4 | adm | /var/adm | /sbin/nologin || lp | x | 4 | 7 | lp | /var/spool/lpd | /sbin/nologin || sync | x | 5 | 0 | sync | /sbin | /bin/sync || shutdown | x | 6 | 0 | shutdown | /sbin | /sbin/shutdown || halt | x | 7 | 0 | halt | /sbin | /sbin/halt || mail | x | 8 | 12 | mail | /var/spool/mail | /sbin/nologin || operator | x | 11 | 0 | operator | /root | /sbin/nologin |+----------+----------+-----+-----+----------+-----------------+----------------+10 rows in set (0.00 sec)
为user表中的每条记录添加自动编号,并验证自动编写结果
mysql> alter table user add sn int(4) auto_increment primary key first;Query OK, 0 rows affected (0.03 sec)Records: 0 Duplicates: 0 Warnings: 0mysql> select * from user limit 10;+----+----------+----------+-----+-----+----------+-----------------+----------------+| sn | username | password | uid | gid | fullname | homedir | shell |+----+----------+----------+-----+-----+----------+-----------------+----------------+| 1 | root | x | 0 | 0 | root | /root | /bin/bash || 2 | bin | x | 1 | 1 | bin | /bin | /sbin/nologin || 3 | daemon | x | 2 | 2 | daemon | /sbin | /sbin/nologin || 4 | adm | x | 3 | 4 | adm | /var/adm | /sbin/nologin || 5 | lp | x | 4 | 7 | lp | /var/spool/lpd | /sbin/nologin || 6 | sync | x | 5 | 0 | sync | /sbin | /bin/sync || 7 | shutdown | x | 6 | 0 | shutdown | /sbin | /sbin/shutdown || 8 | halt | x | 7 | 0 | halt | /sbin | /sbin/halt || 9 | mail | x | 8 | 12 | mail | /var/spool/mail | /sbin/nologin || 10 | operator | x | 11 | 0 | operator | /root | /sbin/nologin |+----+----------+----------+-----+-----+----------+-----------------+----------------+10 rows in set (0.00 sec)
从MySQL数据库中导出查询结果
-以将userdb库user表中UID小于100的前10条记录导出为/myload/user2.txt文件为例
首先,修改配置文件中存放导出导入目录及查看修改结果
[root@host50 ~]# mkdir /myload ; chown mysql /myload[root@host50 ~]# vim /etc/my.cnf[mysqld]secure_file_priv="/myload"[root@dbsvr1 ~]# systemctl restart mysqldmysql> show variables like "secure_file_priv";+------------------+----------+| Variable_name | Value |+------------------+----------+| secure_file_priv | /myload/ |
导出user表中UID小于100的前十条记录
mysql> select * from userdb.user where uid<100 -> into outfile '/myload/user.txt' -> fields terminated by ":";Query OK, 26 rows affected (0.00 sec)
确认导出结果
[root@host50 ~]# wc -l /myload/user.txt26 /myload/user.txt[root@host50 ~]# tail /myload/user.txt 25:tss:x:59:59:Account used by the trousers package to sandbox the tcsd daemon:/dev/null:/sbin/nologin29:rpcuser:x:29:29:RPC Service User:/var/lib/nfs:/sbin/nologin33:gdm:x:42:42::/var/lib/gdm:/sbin/nologin35:sshd:x:74:74:Privilege-separated SSH:/var/empty/sshd:/sbin/nologin36:avahi:x:70:70:Avahi mDNS/DNS-SD Stack:/var/run/avahi-daemon:/sbin/nologin37:postfix:x:89:89::/var/spool/postfix:/sbin/nologin38:ntp:x:38:38::/etc/ntp:/sbin/nologin39:tcpdump:x:72:72::/:/sbin/nologin41:apache:x:48:48:Apache:/usr/share/httpd:/sbin/nologin42:mysql:x:27:27:MySQL Server:/var/lib/mysql:/bin/false
文件
结果
目录
实例
数据
原始
内容
命令
字段
字符
情况
数据库
文件夹
版本
这是
中导
会报
切换
查询
配置
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
为想互联网科技怎么样
互联网科技活动banner
科技和互联网公司
互联网巨头科技公司
互联网金融 金融科技
互联网金融公司科技
礼当家互联网科技
互联网女皇 腾讯科技
国外互联网科技网站
盛创互联网科技有限公司
浙江互联网科技研学营
黑科技闪耀互联网之光
知域互联网科技有限公司大骗子
科技类公司包括互联网吗
锡山区互联网智能科技产品供应
风投北京互联网科技
互联网科技包装股
科技互联网经济论坛
北京品多多互联网科技有限公司
广州全民伙伴互联网科技有限公司
互联网科技公司
礼当家互联网科技
国外互联网科技网站
科技类的互联网平台
互联网科技创新企业排名
随着互联网科技发展
千方科技属于互联网企业吗
晓花互联网科技有限公司网址
无锡工业互联网科技有限公司
从那以后互联网科技有限公司