
Centos 5.5에는 다음과 같은 패턴의 이전 시스템이 있었습니다.
- OS: CentOS 릴리스 5.5(최종)
- 웹 서버: 아파치 2.2.3
- AP 서버: 톰캣 6.0.3.6
- JDK:1.6.0_37-b06
- DB:MySQL5.5.27-1
고객의 요구에 따라 서버에 어떠한 변경이나 영향도 주지 않고 동일한 시스템에 모든 것(Apache, Tomcat, Mysql, Java)의 복제를 설치해야 합니다. 가상 머신에서 몇 가지 테스트를 했는데 mysql에 문제가 생겼습니다. mysql 버전에 대한 내 테스트는 5.5.27 및 5.16.19이며 datadir, 포트, 심지어 my.cnf 구성도 다릅니다.
[root@localhost ~]# vim /usr/local/src/mysql5.5.27/my.cnf
mysql5.5.27
basedir = /usr/local/src/mysql5.5.27
datadir = /usr/local/src/mysql5.5.27/data
port = 3306
socket = /tmp/mysql5.5.27.sock
[root@localhost ~]# vim /usr/local/src/mysql5.6.19/my.cnf
mysql5.6.19
basedir = /usr/local/src/mysql5.6.19
datadir = /usr/local/src/mysql5.6.19/data
port = 3307
socket = /tmp/mysql5.6.19.sock
두 서비스가 오류 없이 정상적으로 시작되고 있습니다. 하지만 문제는 mysql에 로그인하려고 하는데 이 오류가 발생한다는 것입니다.
Can't connect to local MySQL server through socket '/tmp/mysql.sock'
mysql의 여러 인스턴스를 사용해 본 경험이 있는 사람이 있습니까? 이 상황을 이해하도록 도와주세요.
※ mysql 인스턴스 2개의 구성 파일을 분리하고 싶습니다.
답변1
mysql 명령줄의 경우 읽은 위치에 my.cnf 파일이 필요합니다 mysql --help
. 맨 위에는 읽은 구성 파일이 나열되어 있습니다.
다음과 같은 지시문이 필요합니다.
[client]
socket = /tmp/mysql{version}.sock