gpt4 book ai didi

mysql - 为mysql中的特定数据库指定数据目录

转载 作者:搜寻专家 更新时间:2023-10-30 20:06:31 25 4
gpt4 key购买 nike

我有一个包含 4 个不同数据库的 mysql 数据库。其中 1 个数据库有很多读/写事件,这些事件将受益于在 ramdisk 上运行。由于数据布局的性质和所需的读取类型,memcached 在这里不是一个有效的选择。因此,我想在 ramdisk 中运行其中一个数据库(数据持久性在这里不是问题)。

问题:无论如何,是否可以为 mysql 数据库中的一个表设置数据目录?我希望 3 个数据库在我的硬盘上有一个数据目录,另一个指向 ramdisk 中的一个目录。如果没有,我怎么能在同一台服务器上安装两个 mysql 实例(我使用的是 Ubuntu)。

顺便说一句:我知道 MEMORY 引擎但几乎没有提高性能(似乎并没有真正在内存中运行)。

编辑:

我不小心要求为表指定数据目录。我的实际意思是询问如何在 mysql 安装中为 4 个数据库中的 1 个指定数据目录。该帖子已更新以反射(reflect)此更正。

最佳答案

对于 MyISAM 表,您只需在 CREATE TABLE 中提供 DATA DIRECTORY & INDEX DIRECTORY 子句即可语句(如果你对你的表进行分区,我相信你必须为每个分区设置它)。

$ mkdir /tmp/datadir
$ sudo chown mysql:mysql /tmp/datadir/
$ mysql
mysql> use test;
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A

Database changed
mysql> create table otherlocation (id int) ENGINE=MyISAM, DATA DIRECTORY='/tmp/datadir', INDEX DIRECTORY='/tmp/datadir';

Query OK, 0 rows affected (0.01 sec)
mysql> Bye
$ ls -lah /tmp/datadir/
total 496K
drwxr-xr-x 2 mysql mysql 4.0K Oct 18 00:57 .
drwxrwxrwt 32 root root 484K Oct 18 00:55 ..
-rw-rw---- 1 mysql mysql 0 Oct 18 00:57 otherlocation.MYD
-rw-rw---- 1 mysql mysql 1.0K Oct 18 00:57 otherlocation.MYI

关于mysql - 为mysql中的特定数据库指定数据目录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3955564/

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