我的/etc/my.cnf文件如下:
[mysqld_multi]
mysqld = /usr/bin/mysqld_safe
mysqladmin = /usr/bin/mysqladmin
user=mysql
password=123456[mysqld1]
port = 3306
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
pid-file=/var/run/mysqld/mysqld.pid
log=/var/log/mysqld.log
user=mysql[mysqld2]
port = 3307
datadir=/var/lib/data2
socket=/var/lib/mysql/mysql.sock2
pid-file=/var/run/mysqld/mysqld2.pid
log=/var/log/data2/mysqld.log
user=mysql# Default to using old password format for compatibility with mysql 3.x
# clients (those using the mysqlclient10 compatibility package).
# old_passwords=1# Disabling symbolic-links is recommended to prevent assorted security risks;
# to do so, uncomment this line:
# symbolic-links=0[mysqld_safe]
#log-error=/var/log/mysqld.log
#pid-file=/var/run/mysqld/mysqld.pid
相关的文件,我也已经创建了,并且设置为mysql用户所有,启动mysqld1没有问题,关闭也没有问题,但是启动mysqld2时,能起来,关不掉如下:
[root@clp141 mysql-6.0.11-alpha]# /usr/bin/mysqld_multi stop 2
[root@clp141 mysql-6.0.11-alpha]# ps -ef | grep mysql
root     13807     1  0 11:41 pts/0    00:00:00 /bin/sh /usr/bin/mysqld_safe --port=3307 --datadir=/var/lib/data2 --socket=/var/lib/mysql/mysql.sock2 --pid-file=/var/run/mysqld/mysqld2.pid --log=/var/log/data2/mysqld.log --user=mysql
mysql    13874 13807  0 11:41 pts/0    00:00:00 /usr/libexec/mysqld --basedir=/usr --datadir=/var/lib/data2 --user=mysql --log=/var/log/data2/mysqld.log --pid-file=/var/run/mysqld/mysqld2.pid --skip-external-locking --log-error=/var/lib/data2/clp141.err --socket=/var/lib/mysql/mysql.sock2 --port=3307
root     14030  3670  0 12:21 pts/0    00:00:00 grep mysqlmysqld2起来后,连接它的时候,报不能连接mysql.sock,但我在配置文件中明明指的是mysql.sock2呀,在相应目录下,确实生成了mysql.sock2,不得已,我连接使用了如下命令:
mysql -u root -P 3306 -h localhost -S /var/lib/mysql/mysql.sock2
这让我很不解,我的mysql版本是5.0.95,望高手给予帮助,在此谢过。

解决方案 »

  1.   

    mysql2是3307端口  你怎么连mysql2报的错
      

  2.   

    [root@clp141 ~]# /usr/bin/mysqld_multi start 2
    [root@clp141 ~]# ps -ef | grep mysql
    root      5562     1  0 02:49 pts/1    00:00:00 /bin/sh /usr/bin/mysqld_safe --port=3307 --datadir=/var/lib/data2 --socket=/var/lib/mysql/mysql.sock2 --pid-file=/var/run/mysqld/mysqld2.pid --log=/var/log/data2/mysqld.log --server-id=2 --log-bin=/var/lib/data2/mysql-bin --master-host=localhost --master-port=3306 --master-user=repl_user --master-password=123456 --user=mysql
    mysql     5647  5562  1 02:49 pts/1    00:00:00 /usr/libexec/mysqld --basedir=/usr --datadir=/var/lib/data2 --user=mysql --log=/var/log/data2/mysqld.log --server-id=2 --log-bin=/var/lib/data2/mysql-bin --master-host=localhost --master-port=3306 --master-user=repl_user --master-password=123456 --pid-file=/var/run/mysqld/mysqld2.pid --skip-external-locking --log-error=/var/lib/data2/clp141.err --socket=/var/lib/mysql/mysql.sock2 --port=3307
    root      5662  5518  0 02:49 pts/1    00:00:00 grep mysql
    [root@clp141 ~]# mysql -u root
    ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2)
    [root@clp141 ~]# 我是如上操作的,就出错了