MySQL 转储远程数据库
本文介绍如何转储 MySQL 远程数据库。
什么是 MySQL 转储
MySQL 转储是将 SQL 数据库和 MySQL 数据库包备份到另一台服务器的过程。该过程通常碰巧将记录从一个地方备份到其副本。
通常这个过程是计划好的并按时迭代。MySQL 为用户提供了 mysqldump
实用程序来重新创建具有权限的数据库。
该实用程序在系统中创建一个平面文件,其中包含所有 SQL 语句以重新生成架构。
转储所在的服务器不一定是 MySQL 服务器。DumpFile
是跟踪所有数据库和模式的文件。
在备份文件的帮助下,可以在另一个实例或服务器上重新创建数据库模式。该文件包含一组 SQL 语句,如 creating
和 insert
,它们在另一个位置重新填充类似的架构层次结构(数据库->表->视图->函数->记录)。
转储过程通常需要 30 分钟或更长时间,具体取决于数据库的大小。
MySQL 转储的先决条件是:
- 必须具有对数据库、函数、视图、触发器的所有访问权限才能使用该实用程序。
- 转储文件应该具有创建、更改、插入权限,因为它将重新创建新模式并且需要对它们进行更改和插入操作。
MySQL Dump 的不同语法
所有数据库的 MySQL 转储语法:
mysqldump [options] --databases database_name ... > backupFileName.sql
MySQL 转储表的语法:
mysqldump [options] database_name [table_name ...] > backupFileName.sql
MySQL 工作台的 MySQL 转储语法:
mysqldump [options] --all-databases > backupFileName.sql
上述语法形成了数据库、表和所有数据库的转储。其参数的解释如下。
- 关键字
mysqldump
必须始终位于开头。它表示 MySQL 语句要创建转储。它表示需要形成 SQL 转储。 - 后面跟关键字,options 是非强制属性,表示用户可以根据需要添加/删除 options。选项示例如下:
2.1 命令-u root -p
有连字符u
和连字符p
的选项来指示选项列表中的用户名和密码属性。root
是 MySQL 中设置的用户名,密码是用户的选择。 --databases
关键字允许用户指定要备份的数据库名称,后跟数据库名称。- 对于表的转储,指定数据库名称后跟表名,语法与上面给出的相同。
- 要创建工作台内所有数据库的备份,直接传递
--all-databases
文件中没有任何特定的数据库名称。 >
符号指定第一部分的输出必须传递给运算符之后提供的文件。backupfileName.sql
是保存所有转储文件的文件名。文件名是相对路径而不是文件的绝对路径,它会在 MySQL 开发者工作台的 bin 文件夹中创建备份文件。
MySQL 从远程服务器转储到本地机器
MySQL 从远程服务器转储到本地机器的命令如下。
当远程服务器上没有安装 MYSQLdump
时,查询有效。在这种情况下,需要创建从本地机器到远程服务器的隧道,然后将数据转储到本地机器中。
LINUX 环境是 ssh 安全隧道的先决条件。ssh
命令也同样适用。
创建 ssh 隧道的命令如下。
ssh -f -L3310:localhost:3306 user@remote.server -N
ssh
关键字允许系统创建与远程服务器的安全加密连接。使用此命令,用户可以与任何知道服务器详细信息的远程计算机建立安全连接。
ssh
命令有多种可用选项。
-
-f
选项使进程在进程实际执行之前进入后台。 -
-L
选项指定本地或客户端机器端口将被转发到远程主机和服务器机器端口。在上面的查询中,端口
3310
是进程将启动的远程主机端口。端口3306
是本地主机服务器端口。 -
-N
选项用于安全转发端口。该命令是在本地和远程服务器之间创建一个隧道。
mysqldump -P 3310 -h 127.0.0.1 -u mysql_user -p database_name table_name
mysqldump
关键字声明主机创建数据库转储。一旦建立了安全连接,就会形成转储。
-P
选项指定远程机器建立连接的端口。在上述情况下,端口是3310
。-h
选项说明远程服务器的主机名。此处使用隧道过程建立连接。-u
选项表明参数 next 是帮助建立与远程服务器的安全连接的用户名。-p
选项说明连接远程服务器时要使用的密码。
上述语句中提供的数据库名和表名说明了要从远程服务器转储到本地计算机的表名。
相关文章
MySQL 中的减法运算
发布时间:2024/03/25 浏览次数:140 分类:MySQL
-
本教程将指导你如何在 MySQL 中模拟 MINUS 操作。它还通过不同的示例教你各种模拟 MINUS 操作的方法。
MySQL 中的 MUL vs PRI vs UNI
发布时间:2024/03/25 浏览次数:190 分类:MySQL
-
本教程将指导你了解 MySQL 中 MUL、PRI 和 UNI 键之间的区别。它还强调了它们中的每一个的使用。
MySQL 中的 DATETIME 与 TIMESTAMP 的比较
发布时间:2024/03/25 浏览次数:155 分类:MySQL
-
本教程将向你介绍 DATETIME 和 TIMESTAMP 数据类型。你还将了解在哪里使用它们以及它们的异同。
在 MYSQL 中的一个查询中执行多个连接
发布时间:2024/03/25 浏览次数:161 分类:MySQL
-
本教程展示了如何在 MySQL 中的一个查询中合并多个连接;无论是内部的还是外部的。我们还展示了定义连接条件的不同方法。