나는 MySQL의 복제 ansible MySQL의 복제 모듈을 설정하지만, 실패있어 해요 :'SSL/TLS가없는 일반 텍스트로 비밀번호를 보내는 것은 극도로 안전하지 않습니다.'때문에 마스터를 변경할 수 없습니다.
TASK: [mysql | change the master in slave to start the replication] ***********
failed: [mysql-master-1] => {"failed": true, "parsed": false}
invalid output was: Change master
Traceback (most recent call last):
File "/root/.ansible/tmp/ansible-tmp-1414844287.9-261276925072204/mysql_replication", line 1714, in <module>
main()
File "/root/.ansible/tmp/ansible-tmp-1414844287.9-261276925072204/mysql_replication", line 351, in main
changemaster(cursor,chm)
File "/root/.ansible/tmp/ansible-tmp-1414844287.9-261276925072204/mysql_replication", line 164, in changemaster
cursor.execute("CHANGE MASTER TO " + SQLPARAM)
File "/usr/lib64/python2.6/site-packages/MySQLdb/cursors.py", line 175, in execute
if not self._defer_warnings: self._warning_check()
File "/usr/lib64/python2.6/site-packages/MySQLdb/cursors.py", line 89, in _warning_check
warn(w[-1], self.Warning, 3)
_mysql_exceptions.Warning: Sending passwords in plain text without SSL/TLS is extremely insecure.
인프라가 정비 :
target servers:centos 6.4
ansible: 1.7.2
mysqldb:5.6.12-1.el6.x86_64
플레이 북 :
- name: change the master in slave to start the replication
mysql_replication: >
mode=changemaster
master_host={{ mysql_master_host }}
master_user={{ mysql_repl_user }}
master_password={{ mysql_repl_password }}
내가 설정 시도를 수동으로 복제, 작동 :
mysql>change master to
>master_host='mysql-master-1'
>master_user='repl_user'
>master_password='123456';
mysqldb 파이썬 모듈이 명령을 구문 분석하지 못하는 것 같습니다. 어떻게 ssl 복제를 사용하지 않고이 문제를 해결할 수 있습니까?
UPDATE 나는 고정 된 사실, 문제 거짓에서 _defer_warning 변경하여 "/usr/lib64/python2.6/site-packages/MySQLdb/cursors.py"의 소스 파일을 수정했습니다. 그러나 더 우아한 솔루션이 있습니까? 두 개의 추가 옵션
메시지가 나타내는대로 오류가 발생했습니다. TLS를 사용하여 마스터에 연결 하시겠습니까? – EJP
@EJP 감사합니다. 하지만 여러 편의 게임을 읽었으며 TLS도 사용하지 않습니다. 나는 내가 뭘 잘못했는지 궁금 하네. – Hippoom
동일한 문제가 있습니다. 수정 사항을 찾았습니까? – blacksoul