当前位置: 首页 > news >正文

MySQL学习笔记23

逻辑备份:

1、回顾什么是逻辑备份?

逻辑备份就是把数据库、数据表或者数据进行导出,导出到一个文本文件中。

2、逻辑备份工具:

mysqldump:提供全库级、数据库级别以及表级别的数据备份。

mysqldump+binlog:二进制日志实现增量备份。

3、逻辑的导出导入:

导出(数据备份):

无论是什么存储引擎,以下方式本身是一种数据导出的方法,同时可以用来辅助备份,它可以对一个表的其中一列或者某几列做备份。备份的是==数据记录。==

案例:把tb_student数据表中的数据记录进行逻辑导出。

 出现以上问题的主要原因在于我们没有指定MySQL逻辑导出时指定的路径。

我们将配置文件进行更新,并重启mysql。

 还需要更新下权限:

最后我们再执行导出操作:

mysql> select * into outfile '/tmp/sqlbak/tb_student.txt' from db_itheima.tb_student;
Query OK, 5 rows affected (0.00 sec)

 说明:备份的是数据表中的记录。

[root@mysql-server sqlbak]# ll
total 880
-rw-r--r-- 1 root  root  890067 Sep 29 07:04 all.sql
-rw-r----- 1 root  root     915 Sep 29 07:14 binlog.000005
-rw-rw-rw- 1 mysql mysql    112 Sep 29 11:37 tb_student.txt
[root@mysql-server sqlbak]# cat tb_student.txt
1       刘备    33      male    java
2       关羽    32      male    yunwei
4       貂蝉    18      female  ui
5       大乔    18      female  ui
6       小乔    16      female  ui

把数据逻辑进行导出,导出的结果是一个有规则的文本文件。

4、逻辑导入操作:

mysql> use db_itheima;
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -ADatabase changed
mysql>
mysql> drop table tb_student;
Query OK, 0 rows affected (0.00 sec)mysql> create table tb_student (-> id int not null auto_increment,-> name varchar(20),-> age tinyint unsigned default 0,-> gender enum('male','female'),-> subject enum('ui','java','yunwei','python'),-> primary key(id)-> )engine=innodb default charset=utf8;
Query OK, 0 rows affected (0.01 sec)mysql> load data local infile '/tmp/sqlbak/tb_student.txt' into table tb_student;
Query OK, 5 rows affected (0.00 sec)
Records: 5  Deleted: 0  Skipped: 0  Warnings: 0

local data local infile的方法,该方法要求在编译数据库编译的时候加上--enable-local-infile参数才行。

也可以使用方法:

mysqlimport  dbname /path/file    # 要求:导出的文件必须和数据表名称完全一致。

典型的应用场景:

可以把一些有规则的文本文件导入到数据库中。

案例:把/etc/passwd文件中的数据导入到password数据库中。

第一步:创建一个password数据库,password是mysql保留关键字,建议使用两个反撇号括起来。

use db_itheima;create table `password` (`uname` varchar(50) default null,`pass` char(2) default null,`uid` int(11) default null,`gid` int(11) default null,`comment` varchar(255) default null,`home` varchar(50) default null,`shell` varchar(50) default null
)engine=innodb default charset=utf8mb4;

第二步:把/etc/passwd文件拷贝到/tmp/sqlbak目录下,起名叫password.txt。

[root@mysql-server ~]# cp /etc/passwd /tmp/sqlbak/password.txt

第三步:使用mysqlimport把password.txt文件中的内容写入到数据表。

[root@mysql-server sqlbak]# mysqlimport db_itheima --fields-terminated-by=':' --lines-terminated-by                                           ='\n' /tmp/sqlbak/password.txt -p
Enter password:
db_itheima.password: Records: 21  Deleted: 0  Skipped: 0  Warnings: 0[root@mysql-server sqlbak]# mysql -e "select * from db_itheima.password;" -p
Enter password:
+-----------------+------+------+------+-----------------------------------------------------------------+--------------------+----------------+
| uname           | pass | uid  | gid  | comment                                                         | home               | 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  |
| 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  |
| polkitd         | x    |  999 |  998 | User for polkitd                                                | /                  | /sbin/nologin  |
| sshd            | x    |   74 |   74 | Privilege-separated SSH                                         | /var/empty/sshd    | /sbin/nologin  |
| postfix         | x    |   89 |   89 |                                                                 | /var/spool/postfix | /sbin/nologin  |
| ntp             | x    |   38 |   38 |                                                                 | /etc/ntp           | /sbin/nologin  |
| tss             | x    |   59 |   59 | Account used by the trousers package to sandbox the tcsd daemon | /dev/null          | /sbin/nologin  |
| mysql           | x    |  998 |  996 |                                                                 | /home/mysql        | /sbin/nologin  |
+-----------------+------+------+------+-----------------------------------------------------------------+--------------------+----------------+
[root@mysql-server sqlbak]#

使用navicat工具进行数据的导出:mysql支持远程连接。

借助一些mysql的管理软件来进行数据的导出导入。

根据向导一步一步地导出:

导出结果如下:

 

 

插入数据:

 

 

 

 这个是要注意的。

然后再进行导入操作:

 

数据表的备份和还原:

导出向导只能备份数据信息。

数据表的备份。

数据库的备份和还原。

 

转储SQL文件。

 

相关文章:

MySQL学习笔记23

逻辑备份: 1、回顾什么是逻辑备份? 逻辑备份就是把数据库、数据表或者数据进行导出,导出到一个文本文件中。 2、逻辑备份工具: mysqldump:提供全库级、数据库级别以及表级别的数据备份。 mysqldumpbinlog&#xff…...

Java基础---第十篇

系列文章目录 文章目录 系列文章目录一、说说Java 中 IO 流二、 Java IO与 NIO的区别(补充)三、java反射的作用于原理一、说说Java 中 IO 流 Java 中 IO 流分为几种? 按照流的流向分,可以分为输入流和输出流; 按照操作单元划分,可以划分为字节流和字符流; 按照流的角色…...

NLP 03(LSTM)

一、LSTM LSTM (Long Short-Term Memory) 也称长短时记忆结构,它是传统RNN的变体,与经典RNN相比: 能够有效捕捉长序列之间的语义关联缓解梯度消失或爆炸现象 LSTM的结构更复杂,它的核心结构可以分为四个部分去解析: 遗忘门、输入门、细胞状态、输出门 LSTM内部结构…...

Python集成开发环境(IDE):WingPro for Mac

WingPro for Mac是一款Python集成开发环境(IDE)软件,它提供了一系列强大的工具和功能,帮助Python开发人员提高开发效率和质量。 WingPro for Mac拥有直观的用户界面和强大的调试器,可以帮助用户快速定位问题和修复错误…...

[Machine learning][Part3] numpy 矢量矩阵操作的基础知识

很久不接触数学了,machine learning需要用到一些数学知识,这里在重温一下相关的数学基础知识 矢量 矢量是有序的数字数组。在表示法中,矢量用小写粗体字母表示。矢量的元素都是相同的类型。例如,矢量不包含字符和数字。数组中元…...

【中秋国庆不断更】HarmonyOS对通知类消息的管理与发布通知(上)

一、通知概述 通知简介 应用可以通过通知接口发送通知消息,终端用户可以通过通知栏查看通知内容,也可以点击通知来打开应用。 通知常见的使用场景: 显示接收到的短消息、即时消息等。显示应用的推送消息,如广告、版本更新等。显示…...

喜讯 | 怿星科技获评SAE“优秀核心零部件企业”,测试软件平台工具广受赞誉

2023年9月22日-23日,SAE 2023汽车智能与网联技术国际学术会议成功举行。此次学术会议由SAE International与南昌智能新能源汽车研究院联合主办,大会汇聚了来自国内外智能网联领域的顶尖专家和学者。大会同期颁布的奖项旨在向行业推选出更多新时代涌现的杰…...

基于Java的医院预约挂号系统设计与实现(源码+lw+部署文档+讲解等)

文章目录 前言具体实现截图论文参考详细视频演示为什么选择我自己的网站自己的小程序(小蔡coding)有保障的售后福利 代码参考源码获取 前言 💗博主介绍:✌全网粉丝10W,CSDN特邀作者、博客专家、CSDN新星计划导师、全栈领域优质创作…...

福利!这两款我自制的免费配色工具你领到了吗?

​前两天刚入职,还没干过啥活儿,就迎来了中秋3天国庆7天总共8天的假期,美滋滋。 在这么喜庆的日子里,我觉得大家应该也无心科研,所以不如给大家发点儿福利,继续乐呵乐呵。 当然,说是福利&…...

Docker 网桥、docker0 网桥和 --net host:平台差异、使用方式和场景介绍简介:

Docker 是一个流行的容器化平台,它提供了不同的网络配置选项。其中,Docker 网桥、docker0 网桥和 --net host 是常见的网络部署方式。本文将介绍这些网络选项的平台差异、使用方式以及适用的场景。 Docker 网桥 (Bridge Networking):Docker 网桥是 Docker 默认的网络模式。在…...

【深度学习】系统架构工具链的学习笔记

1. 数据管理 数据版本控制和数据包管理:Activeloop Note: Scale Nucleus:其GitHub(nucleus-python-client)的stars数量少于 Deep Lake。Quilt:其GitHub(quilt)的stars数量少于 Deep Lake。...

Linux 网络编程

套接字(Socket): 通过网络实现跨机通信 作用:一种文件描述符传输层的文件描述符 整个编程中,需要着重注意htonl/htons、ntohl/ntohs、inet_addr等 TCP的C/S实现 循环服务器模型 TCP服务器实现过程 1.创建套接字&a…...

SpringBoot读取配置的方式

在 Spring Boot 应用中,我们通常需要一些配置信息来指导应用的运行。这些配置信息可以包括如下内容:端口号、数据库连接信息、日志配置、缓存配置、认证配置、等等。Spring Boot 提供了多种方式来读取这些配置信息。读取配置的目的是为了在程序中使用这些…...

c# winform程序,DispatcherTimer被调用延迟,响应间隔长

c# winform程序,DispatcherTimer被调用延迟,响应间隔长 最近修改的问题,winform界面上两个控件的数据刷新,用DispatcherTimer定时刷新,但是在某些机器上的实际刷新时间间隔远远大于设置时间。 既然MSDN已经说了&…...

【智能家居项目】裸机版本——项目介绍 | 输入子系统(按键) | 单元测试

🐱作者:一只大喵咪1201 🐱专栏:《智能家居项目》 🔥格言:你只管努力,剩下的交给时间! 目录 🏀项目简介🏀输入子系统(按键)⚽应用层⚽设备层⚽ 内核层抽象层⚽…...

算法练习8——有序三元组中的最大值

LeetCode 100088 有序三元组中的最大值 I LeetCode 100086 有序三元组中的最大值 II 给你一个下标从 0 开始的整数数组 nums 。 请你从所有满足 i < j < k 的下标三元组 (i, j, k) 中&#xff0c;找出并返回下标三元组的最大值。如果所有满足条件的三元组的值都是负数&am…...

git创建

问: git remote add origin https://github.com//blog.git fatal: not a git repository (or any of the parent directories): .git 回答: 这个错误提示指出当前目录或其父目录中不存在.git文件夹&#xff0c;因此无法执行git相关操作。请确保你是在一个已经初始化为git仓库…...

yolov8 opencv模型部署(python版)

yolov8 opencv模型部署&#xff08;python版&#xff09; 使用opencv推理yolov8模型&#xff0c;以yolov8n为例子&#xff0c;一共几十行代码&#xff0c;没有废话&#xff0c;给出了注释&#xff0c;从今天起&#xff0c;少写一行代码&#xff0c;少掉一根头发。测试数据有需…...

Simulink仿真封装中的参数个对话框设置

目录 参数和对话框窗格 初始化窗格 文档窗格 为了更加直观和清晰的分析仿真&#xff0c;会将多个元件实现的一个功能封装在一起&#xff0c;通过参数对话框窗格&#xff0c;可以使用参数、显示和动作选项板中的对话框控制设计封装对话框。如图所示&#xff1a; 参数和对话框…...

【C++】class的设计与使用(十)重载iostream运算符

希望对某个类对象进行读写操作&#xff0c;直接cout<<类对象<<endl;或cin>>类对象;编译器会报错&#xff0c;所以我们必须提供一份重载的input/output运算符&#xff1a; 重载ostream运算符 ostream& operator<<(ostream &os, const Triangu…...

23-Oracle 23 ai 区块链表(Blockchain Table)

小伙伴有没有在金融强合规的领域中遇见&#xff0c;必须要保持数据不可变&#xff0c;管理员都无法修改和留痕的要求。比如医疗的电子病历中&#xff0c;影像检查检验结果不可篡改行的&#xff0c;药品追溯过程中数据只可插入无法删除的特性需求&#xff1b;登录日志、修改日志…...

Mac软件卸载指南,简单易懂!

刚和Adobe分手&#xff0c;它却总在Library里给你写"回忆录"&#xff1f;卸载的Final Cut Pro像电子幽灵般阴魂不散&#xff1f;总是会有残留文件&#xff0c;别慌&#xff01;这份Mac软件卸载指南&#xff0c;将用最硬核的方式教你"数字分手术"&#xff0…...

如何理解 IP 数据报中的 TTL?

目录 前言理解 前言 面试灵魂一问&#xff1a;说说对 IP 数据报中 TTL 的理解&#xff1f;我们都知道&#xff0c;IP 数据报由首部和数据两部分组成&#xff0c;首部又分为两部分&#xff1a;固定部分和可变部分&#xff0c;共占 20 字节&#xff0c;而即将讨论的 TTL 就位于首…...

CVE-2020-17519源码分析与漏洞复现(Flink 任意文件读取)

漏洞概览 漏洞名称&#xff1a;Apache Flink REST API 任意文件读取漏洞CVE编号&#xff1a;CVE-2020-17519CVSS评分&#xff1a;7.5影响版本&#xff1a;Apache Flink 1.11.0、1.11.1、1.11.2修复版本&#xff1a;≥ 1.11.3 或 ≥ 1.12.0漏洞类型&#xff1a;路径遍历&#x…...

2025年渗透测试面试题总结-腾讯[实习]科恩实验室-安全工程师(题目+回答)

安全领域各种资源&#xff0c;学习文档&#xff0c;以及工具分享、前沿信息分享、POC、EXP分享。不定期分享各种好玩的项目及好用的工具&#xff0c;欢迎关注。 目录 腾讯[实习]科恩实验室-安全工程师 一、网络与协议 1. TCP三次握手 2. SYN扫描原理 3. HTTPS证书机制 二…...

FFmpeg:Windows系统小白安装及其使用

一、安装 1.访问官网 Download FFmpeg 2.点击版本目录 3.选择版本点击安装 注意这里选择的是【release buids】&#xff0c;注意左上角标题 例如我安装在目录 F:\FFmpeg 4.解压 5.添加环境变量 把你解压后的bin目录&#xff08;即exe所在文件夹&#xff09;加入系统变量…...

PostgreSQL——环境搭建

一、Linux # 安装 PostgreSQL 15 仓库 sudo dnf install -y https://download.postgresql.org/pub/repos/yum/reporpms/EL-$(rpm -E %{rhel})-x86_64/pgdg-redhat-repo-latest.noarch.rpm# 安装之前先确认是否已经存在PostgreSQL rpm -qa | grep postgres# 如果存在&#xff0…...

前端高频面试题2:浏览器/计算机网络

本专栏相关链接 前端高频面试题1&#xff1a;HTML/CSS 前端高频面试题2&#xff1a;浏览器/计算机网络 前端高频面试题3&#xff1a;JavaScript 1.什么是强缓存、协商缓存&#xff1f; 强缓存&#xff1a; 当浏览器请求资源时&#xff0c;首先检查本地缓存是否命中。如果命…...

CTF show 数学不及格

拿到题目先查一下壳&#xff0c;看一下信息 发现是一个ELF文件&#xff0c;64位的 ​ 用IDA Pro 64 打开这个文件 ​ 然后点击F5进行伪代码转换 可以看到有五个if判断&#xff0c;第一个argc ! 5这个判断并没有起太大作用&#xff0c;主要是下面四个if判断 ​ 根据题目…...

解密鸿蒙系统的隐私护城河:从权限动态管控到生物数据加密的全链路防护

摘要 本文以健康管理应用为例&#xff0c;展示鸿蒙系统如何通过细粒度权限控制、动态权限授予、数据隔离和加密存储四大核心机制&#xff0c;实现复杂场景下的用户隐私保护。我们将通过完整的权限请求流程和敏感数据处理代码&#xff0c;演示鸿蒙系统如何平衡功能需求与隐私安…...