gpt4 book ai didi

mysql - 将 MySQL InnoDB 数据库移动到单独的驱动器

转载 作者:IT老高 更新时间:2023-10-29 00:13:48 25 4
gpt4 key购买 nike

在我的 MySQL 安装中,我有一个 InnoDB 数据库,我知道它会变得非常大,所以我决定将它移动到它自己的磁盘上。我希望通过将文件移动到另一个磁盘然后创建符号链接(symbolic link)来做到这一点,但我遇到了错误!

这是我所做的:

1)在my.cnf中我设置了

[mysqld] innodb_file_per_table

(这行得通,我在数据库文件夹中每个 .frm 都有一个 .ibd。)

2) 我已经用 SHOW VARIABLES LIKE "have_symlink";

检查了符号链接(symbolic link)是否正常

(我知道文档说:

Symlinks are fully supported only for MyISAM tables. For files used by tables for other storage engines, you may get strange problems if you try to use symbolic links.

但是我需要外键...)

3) 我移动了数据库文件夹并创建了一个符号链接(symbolic link)。

4) 重启mysql并尝试:

 mysql> USE db_name
Database changed
mysql> SHOW TABLES;
ERROR 1018 (HY000): Can't read dir of './db_name/' (errno: 13)
mysql> exit
user@comp# perror 13
OS error code 13: Permission denied

符号链接(symbolic link)是(如预期的那样)lrwxrwxrwx mysql mysql db_name ->/path-to/db_name/

数据库文件夹权限为drwx------- mysql mysql

所有文件权限都是-rw-rw----mysql mysql

我正在使用 Ubuntu 10.04 服务器和 MySQL 5.1.41(默认来自 apt)。

你们有没有人成功做到这一点?

最佳答案

事实证明这是可行的,但我的老对手 appArmor 阻止了 MySQL 读取移动的目录。

sudo nano /etc/apparmor.d/usr.sbin.mysqld

添加行:

/new-db-path/ r,
/new-db-path/** rwk,

感谢您的帮助!

关于mysql - 将 MySQL InnoDB 数据库移动到单独的驱动器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4182468/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com