0

我正在尝试使用下面的命令让 mysqld 在不同的位置使用 my.cnf。

./bin/mysqld --defaults-file=/apps/local/mysql/my.cnf

它不工作,服务器没有启动,但如果我用下面的命令启动 mysqld,它工作正常。

./bin/mysqld --datadir=/apps/local/mysql/data --basedir=/apps/local/mysql --port=3306 --tmpdir=/tmp --socket=/tmp/mysql.sock -- pid-file=/apps/local/mysql/data/zizou.pid --log-error=/apps/local/mysql/data/zizou.err

我的配置文件有问题吗?my.cnf 如下所示。

[client] 
port=3306 
socket=/tmp/mysql.sock

[mysqld] 
# * Basic Settings
user=mysql 
pid-file=/apps/local/mysql/data/zizou.pid 
socket=/tmp/mysql.sock 
port=3306 
basedir=/apps/local/mysql 
datadir=/apps/local/mysql/data 
tmpdir=/tmp 
log-error=/apps/local/mysql/data/zizou.err 
lc-messages-dir=/apps/local/mysql
skip-external-locking

[mysqldump] 
quick

另外,我正在为 drupal 6 使用 mysql 数据库。它使用默认存储引擎 MISAM。最近,我们看到了一个问题,即 tmpdir 被完全使用。它只有1GB的空间。因此,当我们将 tmpdir 更改为有大量存储空间的地方时,它在启动服务器的几个小时内使用了 41GB,并产生了大量的 CPU 负载,这导致我们的网站宕机。

我们将 tmpdir 切换到 1GB 的目录,没有高 CPU 负载,网站正常运行但磁盘已满。这让我经常清理它。我需要采取什么措施来解决这个问题吗?

编辑:我可以继续删除 .MYI 和 .MYD 文件并启动 mysql 服务器吗?这样做健康吗?

对不起,长篇大论。这些问题困扰了很多人。

谢谢

4

1 回答 1

1

要设置不同的 mysql 实例,您可以在此处查看:http: //dev.mysql.com/doc/refman/5.1/en/multiple-unix-servers.html

对于 tmpdir 问题,您可能正在运行繁重的查询。您可能会从这里得到一些帮助:skip copying to tmp table on disk mysql

于 2013-01-09T18:10:29.000 回答