- MySQL 基础
- MySQL - 首页
- MySQL - 简介
- MySQL - 特性
- MySQL - 版本
- MySQL - 变量
- MySQL - 安装
- MySQL - 管理
- MySQL - PHP 语法
- MySQL - Node.js 语法
- MySQL - Java 语法
- MySQL - Python 语法
- MySQL - 连接
- MySQL - Workbench
- MySQL 数据库
- MySQL - 创建数据库
- MySQL - 删除数据库
- MySQL - 选择数据库
- MySQL - 显示数据库
- MySQL - 复制数据库
- MySQL - 数据库导出
- MySQL - 数据库导入
- MySQL - 数据库信息
- MySQL 用户
- MySQL - 创建用户
- MySQL - 删除用户
- MySQL - 显示用户
- MySQL - 修改密码
- MySQL - 授予权限
- MySQL - 显示权限
- MySQL - 收回权限
- MySQL - 锁定用户账户
- MySQL - 解锁用户账户
- MySQL 表
- MySQL - 创建表
- MySQL - 显示表
- MySQL - 修改表
- MySQL - 重命名表
- MySQL - 克隆表
- MySQL - 截断表
- MySQL - 临时表
- MySQL - 修复表
- MySQL - 描述表
- MySQL - 添加/删除列
- MySQL - 显示列
- MySQL - 重命名列
- MySQL - 表锁定
- MySQL - 删除表
- MySQL - 派生表
- MySQL 查询
- MySQL - 查询
- MySQL - 约束
- MySQL - 插入查询
- MySQL - 选择查询
- MySQL - 更新查询
- MySQL - 删除查询
- MySQL - 替换查询
- MySQL - 插入忽略
- MySQL - 插入重复键更新
- MySQL - 将结果插入表
- MySQL 运算符和子句
- MySQL - WHERE 子句
- MySQL - LIMIT 子句
- MySQL - DISTINCT 子句
- MySQL - ORDER BY 子句
- MySQL - GROUP BY 子句
- MySQL - HAVING 子句
- MySQL - AND 运算符
- MySQL - OR 运算符
- MySQL - LIKE 运算符
- MySQL - IN 运算符
- MySQL - ANY 运算符
- MySQL - EXISTS 运算符
- MySQL - NOT 运算符
- MySQL - 不等于运算符
- MySQL - IS NULL 运算符
- MySQL - IS NOT NULL 运算符
- MySQL - BETWEEN 运算符
- MySQL - UNION 运算符
- MySQL - UNION 与 UNION ALL
- MySQL - MINUS 运算符
- MySQL - INTERSECT 运算符
- MySQL - INTERVAL 运算符
- MySQL 连接
- MySQL - 使用连接
- MySQL - INNER JOIN
- MySQL - LEFT JOIN
- MySQL - RIGHT JOIN
- MySQL - CROSS JOIN
- MySQL - FULL JOIN
- MySQL - 自连接
- MySQL - 删除连接
- MySQL - 更新连接
- MySQL - UNION 与 JOIN
- MySQL 触发器
- MySQL - 触发器
- MySQL - 创建触发器
- MySQL - 显示触发器
- MySQL - 删除触发器
- MySQL - INSERT 之前触发器
- MySQL - INSERT 之后触发器
- MySQL - UPDATE 之前触发器
- MySQL - UPDATE 之后触发器
- MySQL - DELETE 之前触发器
- MySQL - DELETE 之后触发器
- MySQL 数据类型
- MySQL - 数据类型
- MySQL - VARCHAR
- MySQL - BOOLEAN
- MySQL - ENUM
- MySQL - DECIMAL
- MySQL - INT
- MySQL - FLOAT
- MySQL - BIT
- MySQL - TINYINT
- MySQL - BLOB
- MySQL - SET
- MySQL 正则表达式
- MySQL - 正则表达式
- MySQL - RLIKE 运算符
- MySQL - NOT LIKE 运算符
- MySQL - NOT REGEXP 运算符
- MySQL - regexp_instr() 函数
- MySQL - regexp_like() 函数
- MySQL - regexp_replace() 函数
- MySQL - regexp_substr() 函数
- MySQL 函数和运算符
- MySQL - 日期和时间函数
- MySQL - 算术运算符
- MySQL - 数值函数
- MySQL - 字符串函数
- MySQL - 聚合函数
- MySQL 其他概念
- MySQL - NULL 值
- MySQL - 事务
- MySQL - 使用序列
- MySQL - 处理重复项
- MySQL - SQL 注入
- MySQL - 子查询
- MySQL - 注释
- MySQL - 检查约束
- MySQL - 存储引擎
- MySQL - 将表导出到 CSV 文件
- MySQL - 将 CSV 文件导入数据库
- MySQL - UUID
- MySQL - 公共表表达式
- MySQL - ON DELETE CASCADE
- MySQL - Upsert
- MySQL - 水平分区
- MySQL - 垂直分区
- MySQL - 游标
- MySQL - 存储函数
- MySQL - 信号
- MySQL - 重新发送信号
- MySQL - 字符集
- MySQL - 校对规则
- MySQL - 通配符
- MySQL - 别名
- MySQL - ROLLUP
- MySQL - 当天日期
- MySQL - 字面量
- MySQL - 存储过程
- MySQL - EXPLAIN
- MySQL - JSON
- MySQL - 标准差
- MySQL - 查找重复记录
- MySQL - 删除重复记录
- MySQL - 选择随机记录
- MySQL - 显示进程列表
- MySQL - 更改列类型
- MySQL - 重置自动递增
- MySQL - Coalesce() 函数
- MySQL 有用资源
- MySQL - 有用函数
- MySQL - 语句参考
- MySQL - 快速指南
- MySQL - 有用资源
- MySQL - 讨论
MySQL - 数据库导出
MySQL 是最流行的关系数据库系统之一,用于存储和管理数据。它以表和视图的形式组织数据,使数据处理变得更容易,因此许多组织都选择使用 MySQL 来管理其公司的机密数据。由于数据高度机密,因此有必要备份数据库并在需要时恢复它。因此,我们执行数据库导出。
在 MySQL 中导出数据库通常用于备份目的或在服务器之间传输数据。您可以导出整个数据库或其一部分。导出数据库最简单的方法是使用mysqldump 命令行工具。
使用 mysqldump 导出数据库
mysqldump 命令行工具用于在 MySQL 中创建数据库备份。它可以用于备份整个数据库、特定表,甚至基于表的特定行。
以下是导出数据库的 mysqldump 命令语法:
$ mysqldump -u username -p database_name > output_file_path
其中,
用户名:连接到数据库时使用的 MySQL 用户名。
数据库名称:要导出的数据库的名称。
输出文件路径:备份文件的路径。备份数据将存储在此处。
>:此符号将 mysqldump 命令的输出导出到名为 输出文件路径 的文件中。
示例
首先,使用以下查询创建一个名为TUTORIALS的数据库:
Create database TUTORIALS;
执行以下查询将当前数据库选择为 TUTORIALS:
USE TUTORIALS;
让我们在上面创建的数据库中创建一个名为CUSTOMERS的表:
CREATE TABLE CUSTOMERS ( ID INT AUTO_INCREMENT, NAME VARCHAR(20) NOT NULL, AGE INT NOT NULL, ADDRESS CHAR (25), SALARY DECIMAL (18, 2), PRIMARY KEY (ID) );
以下查询将 7 条记录插入 CUSTOMERS 表中:
INSERT INTO CUSTOMERS (ID,NAME,AGE,ADDRESS,SALARY) VALUES (1, 'Ramesh', 32, 'Ahmedabad', 2000.00 ), (2, 'Khilan', 25, 'Delhi', 1500.00 ), (3, 'Kaushik', 23, 'Kota', 2000.00 ), (4, 'Chaitali', 25, 'Mumbai', 6500.00 ), (5, 'Hardik', 27, 'Bhopal', 8500.00 ), (6, 'Komal', 22, 'Hyderabad', 4500.00 ), (7, 'Muffy', 24, 'Indore', 10000.00 );
这里,我们使用mysqldump 命令行语句将 TUTORIALS 数据库导出到 'datadump.sql' 文件。执行以下语句后,我们需要输入 MySQL 服务器密码。
$ mysqldump -u root -p TUTORIALS > data-dump.sql
上述命令不会产生任何可视输出。相反,'data-dump.sql' 文件将保存在您执行命令的命令提示符或终端的当前工作目录中。
仅导出数据库中的特定表
我们还可以使用 mysqldump 命令行工具导出数据库中的特定表。为此,我们使用以下语法:
mysqldump -u username -p database_name table1 table2 ... > output_file.sql
示例
在导出之前,让我们使用以下查询在上面创建的 TUTORIALS 数据库中创建两个新表(STUDENTS 和EMPLOYEES):
CREATE TABLE STUDENTS ( ID INT AUTO_INCREMENT, NAME VARCHAR(20) NOT NULL, AGE INT NOT NULL, ADDRESS CHAR (25), FEES DECIMAL (18, 2), PRIMARY KEY (ID) );
这里,我们正在创建 EMPLOYEES 表:
CREATE TABLE EMPLOYEES ( ID INT AUTO_INCREMENT, NAME VARCHAR(20) NOT NULL, AGE INT NOT NULL, ADDRESS CHAR (25), SALARIES DECIMAL (18, 2), PRIMARY KEY (ID) );
让我们使用以下查询获取 TUTORIALS 数据库中的表列表:
Show Tables;
如下所示,我们在 TUTORIALS 数据库中有三个表:
Tables_in_tutorials |
---|
customers |
employees |
students |
现在,让我们将名为 EMPLOYEES 和 STUDENTS 的两个表导出到 'datadump2.sql',如下所示:
$ mysqldump -u root -p TUTORIALS employees students > output_file.sql
执行上述查询后,它不会显示任何输出。相反,它将两个表的 数据导出到指定的文件。
导出主机中的所有数据库
例如,您的主机中有多个数据库,并且您希望在单个查询中导出所有数据库。在这种情况下,我们可以使用 mysqldump 命令的“--all-databases”选项。
示例
以下是使用 --all-databases 选项导出主机中所有数据库的查询:
$ mysqldump -u root -p --all-databases > database_dump.sql
上述命令不会在屏幕上显示任何可见输出。相反,'database_dump.sql' 文件将保存在您运行命令的命令提示符或终端的当前工作目录中。