[MYAQL / Mariadb] 数据库学习-数据导入导出

news2024/11/28 22:43:34

数据库学习-数据导入导出

  • 数据导入导出(批量处理数据)
    • 查看默认检索目录
      • 模糊查询:`show variables like '%XXXX%';`
      • 修改检索目录路径(!!文件一定要有MySQL用户的 7的RWX 权限!)
      • 默认的检索目录和权限
    • 数据导入
    • 数据导出
      • 自定义要导出的数据内容,列的分隔符 以$分割
      • 自定义导出行的符号为!!,并换行

数据导入导出(批量处理数据)

检索目录(执行导入导出时,MySQL服务默认只在定义的目录下查找文件)
查看默认的检索目录
修改检索目录
.
数据导入(将系统文件的内容存储到数据库服务器的表里)
.
数据导出(将数据库服务器表里的内容存储到系统文件里)

请添加图片描述

查看默认检索目录

mysql> show variables like 'secure_file_priv';
+------------------+-----------------------+
| Variable_name    | Value                 |
+------------------+-----------------------+
| secure_file_priv | /var/lib/mysql-files/ |
+------------------+-----------------------+
1 row in set (0.99 sec)

mysql> system ls /var/lib/
alternatives  dhclient  initramfs  mysql-files     plymouth   rhsm       selinux  tuned
authselect    dnf       logrotate  mysql-keyring   polkit-1   rpm        sss      unbound
dav           games     misc       NetworkManager  portables  rpm-state  systemd  up2date
dbus          httpd     mysql      os-prober       private    rsyslog    tpm

模糊查询:show variables like '%XXXX%';

mysql> show variables like '%secure%';
+--------------------------+---------+
| Variable_name            | Value   |
+--------------------------+---------+
| require_secure_transport | OFF     |
| secure_file_priv         | /mylog/ |
+--------------------------+---------+
2 rows in set (0.00 sec)

修改检索目录路径(!!文件一定要有MySQL用户的 7的RWX 权限!)

1、改配置文件

[root@control-clone ~]# vim /etc/my.cnf
mysql> system cat /etc/my.cnf
#
# This group is read both both by the client and the server
# use it for options that affect everything
#
[client-server]

#
# include all files from the config directory
#
!includedir /etc/my.cnf.d

[mysqld]
secure_file_priv='/myload'

# 末尾两行是要修改的内容


2、创建定义的文件,改所有者为mysql,重启服务mysqld
[root@control-clone ~]# mkdir /myload
[root@control-clone ~]# chown mysql /myload
[root@control-clone ~]# systemctl restart mysqld.service




3、验证:
mysql> show variables like 'secure_file_priv';
+------------------+---------+
| Variable_name    | Value   |
+------------------+---------+
| secure_file_priv | /myload/ |
+------------------+---------+
1 row in set (0.01 sec)

默认的检索目录和权限

[root@control ~]# ls -l /var/lib/mysql-files
total 4
-rw-r--r--. 1 root root 1241 May 16 17:07 passwd
[root@control ~]# ls -l /var/lib/
total 8

drwxr-x---. 2 mysql   mysql     20 May 16 17:07 mysql-files

数据导入

请添加图片描述

例:把用户信息存到数据库里
建库、建表、建表结构

mysql> create table user01(
    -> id int primary key auto_increment,
    -> name char(50),
    -> password char(10),
    -> uid int,
    -> gid int,
    -> comment varchar(150),
    -> homedir char(100),
    -> shell char(80)
    -> );
Query OK, 0 rows affected (0.17 sec)


mysql> desc user01;
+----------+--------------+------+-----+---------+----------------+
| Field    | Type         | Null | Key | Default | Extra          |
+----------+--------------+------+-----+---------+----------------+
| id       | int(11)      | NO   | PRI | NULL    | auto_increment |
| name     | char(50)     | YES  |     | NULL    |                |
| password | char(10)     | YES  |     | NULL    |                |
| uid      | int(11)      | YES  |     | NULL    |                |
| gid      | int(11)      | YES  |     | NULL    |                |
| comment  | varchar(150) | YES  |     | NULL    |                |
| homedir  | char(100)    | YES  |     | NULL    |                |
| shell    | char(80)     | YES  |     | NULL    |                |
+----------+--------------+------+-----+---------+----------------+
8 rows in set (0.01 sec)



2,把文件内容放到定义的检索目录内:
MariaDB [studio]> system cp /etc/passwd /myload
sh: warning: setlocale: LC_ALL: cannot change locale (zh_CN.utf8): No such file or directory


MariaDB [studio]> system ls /myload
sh: warning: setlocale: LC_ALL: cannot change locale (zh_CN.utf8): No such file or directory
anaconda-ks.cfg  passwd



3、导入数据
MariaDB [db1]> load data infile '/myload/passwd'  into table user fields terminated by ":" lines terminated by "\n";
Query OK, 18 rows affected (0.006 sec)               
Records: 18  Deleted: 0  Skipped: 0  Warnings: 0

":"#文件中列的分隔符
"\n"#文件中行的结束符

MariaDB [db1]> select * from user;
+-----------------+----------+------+------+----------------------------+-----------------+----------------+
| name            | password | uid  | gid  | comment                    | homedir         | shell          |
+-----------------+----------+------+------+----------------------------+-----------------+----------------+
| root            | x        |    0 |    0 | root                       | /root           | /bin/zsh       |
| 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  |
| games           | x        |   12 |  100 | games                      | /usr/games      | /sbin/nologin  |
| ftp             | x        |   14 |   50 | FTP User                   | /var/ftp        | /sbin/nologin  |
| nobody          | x        |   99 |   99 | Nobody                     | /               | /sbin/nologin  |
| systemd-network | x        |  192 |  192 | systemd Network Management | /               | /sbin/nologin  |
| dbus            | x        |   81 |   81 | System message bus         | /               | /sbin/nologin  |
| sshd            | x        |   74 |   74 | Privilege-separated SSH    | /var/empty/sshd | /sbin/nologin  |
| ntp             | x        |   38 |   38 |                            | /etc/ntp        | /sbin/nologin  |
| mysql           | x        |  999 |  997 | MySQL server               | /var/lib/mysql  | /sbin/nologin  |
+-----------------+----------+------+------+----------------------------+-----------------+----------------+
18 rows in set (0.000 sec)

MariaDB [db1]> 


4、完善表,添加行号
MariaDB [db1]> alter table user add id int primary key auto_increment first;
Query OK, 0 rows affected (0.022 sec)
Records: 0  Duplicates: 0  Warnings: 0

MariaDB [db1]> desc user;
+----------+--------------+------+-----+---------+----------------+
| Field    | Type         | Null | Key | Default | Extra          |
+----------+--------------+------+-----+---------+----------------+
| id       | int(11)      | NO   | PRI | NULL    | auto_increment |
| name     | char(50)     | YES  |     | NULL    |                |
| password | char(10)     | YES  |     | NULL    |                |
| uid      | int(11)      | YES  |     | NULL    |                |
| gid      | int(11)      | YES  |     | NULL    |                |
| comment  | varchar(150) | YES  |     | NULL    |                |
| homedir  | char(100)    | YES  |     | NULL    |                |
| shell    | char(80)     | YES  |     | NULL    |                |
+----------+--------------+------+-----+---------+----------------+
8 rows in set (0.001 sec)

MariaDB [db1]> select * from user;
+----+-----------------+----------+------+------+----------------------------+-----------------+----------------+
| id | name            | password | uid  | gid  | comment                    | homedir         | shell          |
+----+-----------------+----------+------+------+----------------------------+-----------------+----------------+
|  1 | root            | x        |    0 |    0 | root                       | /root           | /bin/zsh       |
|  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  |
| 11 | games           | x        |   12 |  100 | games                      | /usr/games      | /sbin/nologin  |
| 12 | ftp             | x        |   14 |   50 | FTP User                   | /var/ftp        | /sbin/nologin  |
| 13 | nobody          | x        |   99 |   99 | Nobody                     | /               | /sbin/nologin  |
| 14 | systemd-network | x        |  192 |  192 | systemd Network Management | /               | /sbin/nologin  |
| 15 | dbus            | x        |   81 |   81 | System message bus         | /               | /sbin/nologin  |
| 16 | sshd            | x        |   74 |   74 | Privilege-separated SSH    | /var/empty/sshd | /sbin/nologin  |
| 17 | ntp             | x        |   38 |   38 |                            | /etc/ntp        | /sbin/nologin  |
| 18 | mysql           | x        |  999 |  997 | MySQL server               | /var/lib/mysql  | /sbin/nologin  |
+----+-----------------+----------+------+------+----------------------------+-----------------+----------------+
18 rows in set (0.000 sec)

数据导出

请添加图片描述

加个序号:
mysql> alter table user add id int primary key auto_increment first;
Query OK, 0 rows affected (0.20 sec)
Records: 0  Duplicates: 0  Warnings: 0

mysql> desc user;
+----------+--------------+------+-----+---------+----------------+
| Field    | Type         | Null | Key | Default | Extra          |
+----------+--------------+------+-----+---------+----------------+
| id       | int(11)      | NO   | PRI | NULL    | auto_increment |
| name     | char(50)     | YES  |     | NULL    |                |
| password | char(10)     | YES  |     | NULL    |                |
| uid      | int(11)      | YES  |     | NULL    |                |
| gid      | int(11)      | YES  |     | NULL    |                |
| comment  | varchar(150) | YES  |     | NULL    |                |
| homedir  | char(100)    | YES  |     | NULL    |                |
| shell    | char(80)     | YES  |     | NULL    |                |
+----------+--------------+------+-----+---------+----------------+
8 rows in set (0.00 sec)


导出数据,到检索目录下,文件名自定义。不用提前在目录下创建文件,目录下没有的文件可自动创建!!!
mysql> select * from user into outfile '/var/lib/mysql-files/user.txt02';
Query OK, 25 rows affected (0.00 sec)

mysql> system cat /var/lib/mysql-files/user.txt02
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
11      games   x       12      100     games   /usr/games      /sbin/nologin
12      ftp     x       14      50      FTP User        /var/ftp        /sbin/nologin
13      nobody  x       65534   65534   Kernel Overflow User    /       /sbin/nologin
14      dbus    x       81      81      System message bus      /       /sbin/nologin
15      systemd-coredump        x       999     997     systemd Core Dumper     /       /sbin/nologin
16      systemd-resolve x       193     193     systemd Resolver        /       /sbin/nologin
17      tss     x       59      59      Account used by the trousers package to sandbox the tcsd daemon        /dev/null       /sbin/nologin
18      polkitd x       998     996     User for polkitd        /       /sbin/nologin
19      unbound x       997     995     Unbound DNS resolver    /etc/unbound    /sbin/nologin
20      sssd    x       996     993     User for sssd   /       /sbin/nologin
21      sshd    x       74      74      Privilege-separated SSH /var/empty/sshd /sbin/nologin
22      rngd    x       995     992     Random Number Generator Daemon  /var/lib/rngd   /sbin/nologin
23      alice   x       1000    1000            /home/alice     /bin/bash
24      apache  x       48      48      Apache  /usr/share/httpd        /sbin/nologin
25      mysql   x       1001    1001            /home/mysql     /bin/bash
mysql>

自定义要导出的数据内容,列的分隔符 以$分割

mysql> select name,uid from user  into outfile '/var/lib/mysql-files/userid.txt'  fields  terminated by '$';
Query OK, 25 rows affected (0.01 sec)

mysql> system cat /var/lib/mysql-files/userid.txt
root$0
bin$1
daemon$2
adm$3
lp$4
sync$5
shutdown$6
halt$7
mail$8
operator$11
games$12
ftp$14
nobody$65534
dbus$81
systemd-coredump$999
systemd-resolve$193
tss$59
polkitd$998
unbound$997
sssd$996
sshd$74
rngd$995
alice$1000
apache$48
mysql$1001
mysql>

自定义导出行的符号为!!,并换行

mysql> system cat /var/lib/mysql-files/userid01.txt                                            root$0!!elect name,uid from user  where id<=5  into outfile '/var/lib/mysql-files/userid02.txt'  fields  terminated by '$'  lines  terminated by '!!\n';
Query OK, 5 rows affected (0.00 sec)

mysql> system cat /var/lib/mysql-files/userid02.txt
root$0!!
bin$1!!
daemon$2!!
adm$3!!
lp$4!!
mysql>

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/532980.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

前端-02 CSS基础

1 简介 1.1 CSS语法 语法 选择器&#xff1a;HTML元素 生命块&#xff1a;用;隔开的各种声明 {a;b} 每条声明有CSS属性名称和值&#xff0c;用冒号分割{属性:值;属性:值} 案例 整块代码 <!DOCTYPE html> <html><head><style>body {background…

同一个IP可以安装配置多个SSL证书吗?

如何在同一IP地址上运行多个SSL证书? 服务器名称指示SNI&#xff0c;可以帮助您实现同一IP运行多个SSL证书&#xff0c;这样虚拟主机网站也能用上SSL证书了。 什么是SNI 服务器名称指示SNI是SSL的一个重要组成部分&#xff0c;SNI允许多个网站存在于同一个IP地址上&#xff…

CVPR目标检测经典作:HOG特征

来源&#xff1a;投稿 作者&#xff1a;小灰灰 编辑&#xff1a;学姐 HOG特征 HOG特征( Histogram of Oriented Gradients 方向梯度直方图&#xff09;是一种在图像上找到特征描述子&#xff0c;主要通过计算和统计图像局部区域的梯度方向直方图来构成特征。来源于cvpr2015 年…

Angular 学习笔记

本系列笔记主要参考&#xff1a; Angular学习视频 Angular官方文档 Angular系列笔记 特此感谢&#xff01; 目录 1.Angular 介绍2.Angular 环境搭建、创建 Angular 项目、运行 Angular 项目2.1.环境搭建2.2.创建 Angular 项目2.3.运行项目 3.Angular 目录结构分析3.1.目录结构分…

低分辨率视频可以变高分辨率吗?

近几年&#xff0c;老电影、老视频片段修复越来越常见了。很多优质的片源&#xff0c;因为年代久远&#xff0c;分辨率较低&#xff0c;画质比较差&#xff0c;通过视频超分技术&#xff0c;实现了画质增强&#xff0c;提高画质分辨率&#xff0c;视频画面变得更清晰了。 首先…

计算机有哪些方面的技术? - 易智编译EaseEditing

计算机是一种多功能的电子设备&#xff0c;可以处理数据、进行信息存储和检索、进行计算和模拟等多种任务。计算机技术是指计算机相关的技术领域&#xff0c;包括硬件和软件等多个方面。下面介绍一些常见的计算机技术&#xff1a; 操作系统技术&#xff1a; 操作系统是计算机系…

select poll epoll有什么区别

select/poll select 实现多路复用的方式是&#xff0c;将已连接的 Socket 都放到一个文件描述符集合&#xff0c;然后调用 select 函数将文件描述符集合拷贝到内核里&#xff0c;让内核来检查是否有网络事件产生&#xff0c;检查的方式很粗暴&#xff0c;就是通过遍历文件描述…

什么是日志文件

文章目录 什么是日志文件Centos 7 日志文件简易说明日志文件的重要性Linux常见的日志文件文件名/var/log/boot.log/var/log/cron/var/log/dmesg/var/log/lastlog/var/log/maillog或 /var/log/mail/*/var/log/messages/var/log/secure/var/log/wtmp、/var/log/faillog/var/log/h…

Netty实战(二)

第一个Netty程序 一、环境准备二、Netty 客户端/服务器概览三、编写 Echo 服务器3.1 ChannelHandler 和业务逻辑3.2 引导服务器 四、编写 Echo 客户端4.1 通过 ChannelHandler 实现客户端逻辑4.2 引导客户端 五、构建和运行 Echo 服务器和客户端 一、环境准备 Netty需要的运行…

U盘怎么加密?最简单的U盘加密方法

说起U盘&#xff0c;相信每个人都不会感到陌生&#xff0c;它是最常用的移动存储设备。那么&#xff0c;你会加密U盘吗&#xff1f;相信不少人并不知道这个问题的答案。下面小编就来教大家自己动手制作加密U盘。 首先&#xff0c;我们需要提前做好准备工作&#xff0c;一个可以…

04-数组和字符串

概述 同一个数组所有的成员都是相同的数据类型&#xff0c;同时所有的成员在内存中的地址是连续的。 一维数组 全局数组若不初始化&#xff0c;编译器将其初始化为零。局部数组若不初始化&#xff0c;内容为随机值。 int a[10] { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 };//定义一…

瑞吉外卖 - 员工信息分页查询功能(7)

某马瑞吉外卖单体架构项目完整开发文档&#xff0c;基于 Spring Boot 2.7.11 JDK 11。预计 5 月 20 日前更新完成&#xff0c;有需要的胖友记得一键三连&#xff0c;关注主页 “瑞吉外卖” 专栏获取最新文章。 相关资料&#xff1a;https://pan.baidu.com/s/1rO1Vytcp67mcw-PD…

NodeJs之调试

关于调试 当我们只专注于前端的时候&#xff0c;我们习惯性F12&#xff0c;这会给我们带来安全与舒心的感觉。 但是当我们使用NodeJs来开发后台的时候&#xff0c;我想噩梦来了。 但是也别泰国担心&#xff0c;NodeJs的调试是很不方便&#xff01;这是肯定的。 但是还好&…

Spring MVC优雅处理业务异常

本文中&#xff0c;我会描述如何在应用程序的不同层次&#xff0c;优雅地处理业务异常。 异常定义 BusinessException基类定义如下&#xff0c;注意异常中携带业务错误码&#xff0c;方便前端处理异常&#xff1a; public class BusinessException extends RuntimeException…

哪些云渲染服务用于多GPU渲染?

众所周知&#xff0c;GPU渲染 可以使用显卡代替CPU进行渲染&#xff0c;可以显着加快渲染速度&#xff0c;因为GPU主要是为快速图像渲染而量身定制的。GPU的诞生是为了应对图形密集型应用程序&#xff0c;这些应用程序会给CPU带来负担并阻碍计算性能。GPU渲染的原理是在多个数据…

信创办公–基于WPS的EXCEL最佳实践系列 (图表)

信创办公–基于WPS的EXCEL最佳实践系列 &#xff08;图表&#xff09; 目录 应用背景操作步骤1、创建图表和图形2、添加其他数据序列3、在源数据的行与列之间切换4、添加图例5、调整图表和图形的大小6、修改图表和图形参数7、应用图表布局和样式8、设置图表和图形的位置9、插入…

4面都过了,最后要价10K,HR说我不尊重华为....

在不知道一个公司的普遍薪资水平的时候&#xff0c;很多面试者不敢盲目的开价&#xff0c;但就因为这样可能使得面试官怀疑你的能力。一位网友就在网上诉说了自己的经历&#xff0c;男子是一位测试员&#xff0c;已经有九年的工作经历了&#xff0c;能力自己觉得还不错。 因为…

单片机课设 - 液晶显示屏显示时间(实验板实现)

目录 前言&#xff1a;本代码涉及的主要知识&#xff1a;代码&#xff08;实验板实现代码&#xff09;&#xff1a; 前言&#xff1a; 设计本代码的主要目的是为了完成期末作业&#xff0c;即在液晶显示屏上显示、时间、日期、温度&#xff0c;以及用按键控制时间、温度的显示。…

Leetcode50. Pow(x, n)

Every day a Leetcode 题目来源&#xff1a;50. Pow(x, n) 解法1&#xff1a;递归 代码&#xff1a; /** lc appleetcode.cn id50 langcpp** [50] Pow(x, n)*/// lc codestart class Solution { public:double myPow(double x, int n){if (n 0)return 1.0;if (n < 0)re…

华为OD机试真题 Java 实现【获取最大软件版本号】【2023Q1 100分】

一、题目描述 Maven版本号定义,<主版本>.<次版本><增量版本>-<里程碑版本> 举例3.1.4-beta 其中,主版本和次版本都是必须的,主版本,次版本,增量版本由多位数字组成,可能包含前导零,里程碑版本由字符串组成。 <主版本>.<次版本>增…