mysqld使用rosa双机软件共享数据目录

服务器操作系统redhat as 5.3 ,mysql 5.0.45 ,rose ha 8.0

两台机器共享存储上的1T空间,mysql数据目录放置在存储上

设备 /dev/sdh ,mount点/mnt/sdh

1、修改mysqld 数据目录

mount /dev/sdh /mnt/sdh

mkdir /mnt/sdh/data

chown -R mysql:mysql /mnt/sdh/data

cp -a /var/lib/mysql /mnt/sdh/data

2、修改my.cnf文件

[root@localhost1 ~]# vi /etc/my.cnf

[mysqld]
datadir=/mnt/sdh/data
socket=/var/lib/mysql/mysql.sock                         (socket文件可以不改)
user=mysql
# Default to using old password format for compatibility with mysql 3.x
# clients (those using the mysqlclient10 compatibility package).
old_passwords=1

[mysqld_safe]
log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid

2、更改selinux 的相关mysql的设置

setsebool -P allow_user_mysql_connect 1

setsebool -P mysqld_disable_trans 1

推荐修改/etc/selinux/config,将SELINUX=enforcing修改为SELINUX=disable.

(我在这个问题上耽误了很长时间,mysql不能启动,日志显示Warning] Can't create test file /var/lib/mysql/trinity.lower-test 把数据目录chcon -R -h -t mysqld_db_t也不行,折腾很长时间才发现是selinux的问题。)

3、修改/etc/init.d/mysqld

将datadir "/var/lib/mysql"修改为datadir "/mnt/sdh/data/mysql"

4、配置rose ha软件。


在更改mysql目录时曾经碰到很多问题,

1    error 13 的的问题 (权限问题,使用chown -R mysql:mysql 数据目录)

2、Can't open and lock privilege tables: Table 'mysql.host' doesn't exist    (文件实际存在)

3、/usr/local/mysql/libexec/mysqld: Table 'mysql.host' doesn't exist (文件实际存在)

第 2个问题和第3个问题是出现在把/var/lib/mysql目录复制到新的目录后无法service mysqld start,很奇怪数据在/var/lib/mysql 目录一点儿问题也没有,但只有复制到/mnt/sdh/data目录后就出错,检查了半天,最后通过 mysql_install_db --user=mysql 后正常。


你可能感兴趣的:(mysql,操作系统,服务器,软件,password)