MySQL 5.0이 현재 사용중인 구성 파일을 결정하는 명령이 있습니까?
답변
Linux를 사용하는 경우 strace
예를 들어로 ‘mysqld’를 시작하십시오 strace ./mysqld
.
다른 모든 시스템 호출 중에는 다음과 같은 것이 있습니다.
stat64("/etc/my.cnf", 0xbfa3d7fc) = -1 ENOENT (No such file or directory)
stat64("/etc/mysql/my.cnf", {st_mode=S_IFREG|0644, st_size=4227, ...}) = 0
open("/etc/mysql/my.cnf", O_RDONLY|O_LARGEFILE) = 3
보시다시피 .cnf 파일은 사용하려고 시도하고 마지막으로 사용하는 파일을 나열합니다.
답변
환상적인 “고성능 MySQL”O’Reilly 책에서 발췌 :
$ which mysqld
/usr/sbin/mysqld
$ /usr/sbin/mysqld --verbose --help | grep -A 1 "Default options"
Default options are read from the following files in the given order:
/etc/mysql/my.cnf ~/.my.cnf /usr/etc/my.cnf
답변
당신이 mysql --verbose --help | less
그것을 실행 .cnf
하면 찾을 파일 11 행에 대해 알려줍니다 .
mysql --print-defaults
구성 값이 어떻게 사용되는지 보여줄 수도 있습니다. 또한 어떤 구성 파일을로드하는지 식별하는 데 유용 할 수 있습니다.
답변
Windows를 사용 중이며 최신 버전의 MySQL 커뮤니티 5.6을 설치했습니다.
구성 파일이 사용하는 것을 확인하기 위해 관리 도구> 서비스> MySQL56> 마우스 오른쪽 버튼으로 클릭> 속성으로 이동하여 실행 파일 경로를 확인했습니다.
“C : / Program Files / MySQL / MySQL Server 5.6 / bin \ mysqld”–defaults-file = “C : \ ProgramData \ MySQL \ MySQL Server 5.6 \ my.ini”MySQL56
답변
대안은 사용하는 것입니다
mysqladmin variables
답변
mysqld –help –verbose는 위험하다. 인스턴스 실행을 위해 pidfile을 쉽게 덮어 쓸 수 있습니다! –pid-file = XYZ와 함께 사용하십시오.
아, 인스턴스가 두 개 이상 실행 중이라면 실제로 사용할 수 없습니다. 기본값 만 표시됩니다.
그것에 관한 정말 좋은 기사 :
답변
우분투에서 빠른 테스트를했습니다.
-
/etc/mysql/my.cnf를 생성 한 mysql-server 설치
-
mysqld –verbose –help | grep -A 1 “기본 옵션”
110112 13:35:26 [참고] 플러그인 ‘FEDERATED’가 비활성화되었습니다.
기본 옵션은 주어진 순서대로 다음 파일에서 읽습니다. /etc/my.cnf /etc/mysql/my.cnf /usr/etc/my.cnf ~ / .my.cnf
-
각각 포트 번호가 다른 /etc/my.cnf 및 /usr/etc/my.cnf 작성
-
mysql을 다시 시작-/usr/etc/my.cnf에 설정된 포트 번호를 사용하고있었습니다
또한 mysqld에 –defaults-file 옵션을 찾았습니다. 여기에 구성 파일을 지정하면 / usr / sbin / mysqld –verbose –help |에 의해 리턴되는 내용에 관계없이 해당 구성 파일 만 사용됩니다. grep -A 1 “기본 옵션”