文档首页
MySQL 9.0 参考手册
相关文档 下载本手册

MySQL 9.0 参考手册  /  ...  /  在 Windows 上使用符号链接创建数据库

10.12.2.3 在 Windows 上使用符号链接创建数据库

在 Windows 上,符号链接可用于数据库目录。这使您可以通过设置指向它的符号链接,将数据库目录放在不同的位置(例如,在不同的磁盘上)。在 Windows 上使用数据库符号链接类似于在 Unix 上的使用,尽管设置链接的过程有所不同。

假设您要将名为 mydb 的数据库的数据库目录放在 D:\data\mydb。为此,在 MySQL 数据目录中创建一个指向 D:\data\mydb 的符号链接。但是,在创建符号链接之前,请确保 D:\data\mydb 目录存在,必要时创建它。如果您已经在数据目录中拥有名为 mydb 的数据库目录,请将其移动到 D:\data。否则,符号链接将不起作用。为了避免问题,请确保在移动数据库目录时服务器没有运行。

在 Windows 上,您可以使用 mklink 命令创建符号链接。此命令需要管理员权限。

  1. 确保数据库所需的路径存在。对于此示例,我们使用 D:\data\mydb,以及名为 mydb 的数据库。

  2. 如果数据库不存在,请在 mysql 客户端中发出 CREATE DATABASE mydb 来创建它。

  3. 停止 MySQL 服务。

  4. 使用 Windows 资源管理器或命令行,将目录 mydb 从数据目录移动到 D:\data,替换同名目录。

  5. 如果您尚未使用命令提示符,请打开它,并将位置更改为数据目录,如下所示

    C:\> cd \path\to\datadir

    如果您的 MySQL 安装在默认位置,您可以使用以下命令

    C:\> cd C:\ProgramData\MySQL\MySQL Server 9.0\Data
  6. 在数据目录中,创建一个名为 mydb 的符号链接,它指向数据库目录的位置

    C:\> mklink /d mydb D:\data\mydb
  7. 启动 MySQL 服务。

此后,在数据库 mydb 中创建的所有表都将创建在 D:\data\mydb 中。

或者,在 MySQL 支持的任何版本的 Windows 上,您可以通过在数据目录中创建一个包含目标目录路径的 .sym 文件,来创建指向 MySQL 数据库的符号链接。该文件应命名为 db_name.sym,其中 db_name 是数据库名称。

使用 .sym 文件在 Windows 上支持数据库符号链接是默认启用的。如果您不需要 .sym 文件符号链接,可以通过使用 --skip-symbolic-links 选项启动 mysqld 来禁用对它们的 支持。要确定您的系统是否支持 .sym 文件符号链接,请使用以下语句检查 have_symlink 系统变量的值

SHOW VARIABLES LIKE 'have_symlink';

要创建 .sym 文件符号链接,请使用以下步骤

  1. 将位置更改为数据目录

    C:\> cd \path\to\datadir
  2. 在数据目录中,创建一个名为 mydb.sym 的文本文件,其中包含以下路径名:D:\data\mydb\

    注意

    新数据库和表的路径名应为绝对路径。如果您指定相对路径,则该位置相对于 mydb.sym 文件。

此后,在数据库 mydb 中创建的所有表都将创建在 D:\data\mydb 中。