gpt4 book ai didi

mysql - Linux:MySQL:如何在 Linux 中使用安装在 NTFS 上的 mysql 数据库作为 mysql 数据库?

转载 作者:太空狗 更新时间:2023-10-29 12:21:52 24 4
gpt4 key购买 nike

我想在我的 linux mysql 中使用 D:\xampp\mysql\data 中的数据库而不移动它。所以我可以在 linux 和 windows 上处理它们

这是我做的:

# mount -t ntfs -o uid=mysql,gid=mysql,dmask=002,fmask=113 /dev/sda5 /media/public/
# cd /var/lib/mysql
# ln /media/public/xampp/mysql/data/my_db -s
# chown -R mysql:mysql /var/lib/mysql/my_db

但是mysql无法读取数据库表

use my_db
show tables

报错:mysql无法读取目录'./my_db'

这似乎是一个权限问题。我该怎么办?

PS:只有一台机器有两个操作系统,Windows和Linux。当我在 Windows 或 Linux 中时,我想使用与 datadir 相同的目录。

附言:我试过ntfs-3g。现在 mound 分区及其所有内容所有权是 mysql:mysql。/var/lib/mysql/my_db 也是 mysql:mysql。但我仍然在 show tables

上遇到以下错误

错误 1018 (HY000):无法读取 './my_db/' 的目录(错误号:13)

最佳答案

首先,绝不允许多个 MySQL 实例同时使用数据文件。这是灾难的根源。

其次,为什么两台机器都需要MySQL的服务器?为什么不直接使用 linux 机器上的客户端通过网络连接到 windows 机器上的服务器?

第三,如果您真的必须这样做,我建议启用master-master replication它们之间。所以每台服务器都有自己的存储空间,并且会自动来回传送更改。

编辑

啊哈,等等...你是双引导吗?如果是这样,您需要确保 mysql 用户可以读取整个 /var/lib/mysql 目录。仅对 my_db 文件夹进行 chmod 是不够的。

哦,你是如何将挂载点链接到 MySQL 的数据目录的(这不在你的命令列表中)......

关于mysql - Linux:MySQL:如何在 Linux 中使用安装在 NTFS 上的 mysql 数据库作为 mysql 数据库?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3524203/

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