Fedora 16 시스템에서 mysql 슬레이브를 설정하고 있는데 server_id
올바르게 설정되지 않았습니다. 내 /etc/my.cnf
것은:
[mysqld]
server-id=16
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
read-only = 1
symbolic-links=0
max_allowed_packet = 100000000
[mysqld_safe]
log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid
그러나 후자는 systemctl restart mysqld.service
이로 인해 복제가 실패함을 show variables like "server_id"
나타 냅니다.server_id
0
/var/log/mysqld.log
마지막 수정은 서버를 마지막으로 다시 시작했을 때인데 그 이후에는 로그 항목이 없습니다(오늘 다시 시작했는데 마지막 항목이 어제 항목이었습니다).
왜 작동하지 않습니까 server-id=16
? 다른 파일에 설정해야 합니까? 또는 명령줄 옵션에서 시작 systemd
하도록 단위 파일을 편집 하거나 SQL 문을 실행하여 시작 시 값을 설정하는 방법이 있습니까 ?mysqld
--server-id=
mysqld
server_id
답변1
다음을 사용하여 selinux 컨텍스트를 확인하십시오.
시작 및 종료 메시지 에 대해서는 mysqld
추가로 /var/log/mysqld.log
확인하십시오 /var/log/messages
.
메시지(경고/오류)에 sealert
제안이 표시되면 mysqld selinux 컨텍스트를 확인하세요. 해당 내용이 잘못되었거나 최신이 아닐 수 있습니다. 업데이트로 이 문제가 해결될 수도 있습니다.
--server-id=
mysqld 시작 스크립트에 사용하려면 다음 위치를 확인하세요.
/etc/sysconfig/
mysqld
부팅 옵션을 사용자 정의하는 파일이 있을 수도 있습니다 .
/etc/rc.d/init.d/
mysqld
시작 스크립트는 여기에 있습니다. 스크립트에서 이 옵션을 하드코딩할 수 있습니다. 하지만 업그레이드할 때마다 변경 사항을 적용해야 합니다.
추신: 시스템 지식이 두 시스템 모두에 적용되도록 슬레이브 OS를 Debian/Ubuntu로 전환하는 것을 고려할 수 있습니다. 또한 (IMHO) Fedora는 배포판의 수명 주기가 짧기 때문에(유효 기간 6개월 + 업데이트 지원 6개월) 프로덕션/서버에 적합하지 않습니다. RedHat 관련 운영 체제를 선호하는 경우 RedHat 또는 CentOS를 사용하십시오.