2014-11-11 2 views
2

centos 6.5에 MySQL 5.6.21이 실행 중이며 Linux 14.0.4 LTS 서버에서이 MySQL 서버에 액세스하려고 시도하지만 오류 2003 (HY000) : '192.192.4.86'(113)의 MySQL 서버에 연결할 수 없습니다.centOS에서 원격으로 MySQL 서버에 액세스 할 수 없습니다

내 Windows 컴퓨터에서 putty 및 winscp를 사용하여 centOS에 액세스 할 수 있지만 다른 운영 체제에서는 centOS mysql 서버에 연결할 수 없습니다.

다음 작업을 수행했습니다.

건너 뛰기 네트워킹도 주석 처리됩니다. 부여 모든 권한 . TO 'root'@'192.192.4.222'는 'root'로 표시됩니다. 부여 모든 권한 . TO 'root'@'127.0.0.1'IDENTIFIED BY 'root'; 부여 모든 권한 . TO 'root'@ 'localhost'IDENTIFIED BY 'root'; iptables에

-A INPUT -i eth0 -p tcp --destination-port 3306 -j ACCEPT 
-A INPUT -i eth0 -s 192.192.4.222 -p tcp --destination-port 3306 -j ACCEPT 
-A INPUT -s 192.192.4.85 -m tcp -p tcp --dport 3306 -j ACCEPT 

포트 3306에

추가 다음과 같은 일 내가 아직 선택 목록 모드에 있습니다.

netstat -nat |grep 3306 

tcp 0 0 :::3306 :::* LISTEN 

하지만 centos MySQL 서버에 원격으로 액세스 할 수 없습니다.

내가 잘못되었거나 누락 된 부분을 알면 알려 주시기 바랍니다.

미리 감사드립니다. 루트 사용자 이름과 루트 암호를 사용하여 MySQL의에

+0

'skip-networking' 대신'bind-address = 0.0.0.0'을 사용해보십시오. 또한 MySQL에서 grant 후에'flush privileges'를 사용했는지 확인하십시오. – Salem

+0

나는 이미 이렇게했으며 효과가 없습니다. – sam

+0

안녕하세요, 아무도 내가 잘못 plz 도움이 어디서 어떤 생각을 가지고 .... – sam

답변

0

로그인

mysql -u root -proot

다음 실행 원격 호스트로 MySQL의 실행 명령을

GRANT ALL ON *.* TO [email protected]'localhost' IDENTIFIED BY 'mysqluser';

GRANT ALL PRIVILEGES ON *.* TO 'mysqluser'@'localhost' WITH GRANT OPTION;

CREATE USER 'mysqluser'@'%' IDENTIFIED BY 'mysqluser';

GRANT ALL PRIVILEGES ON *.* TO 'mysqluser'@'%' WITH GRANT OPTION;

이제 당신은 이것을 시도 할 수

mysql -h yourhostname -u mysqluser -pmysqluser

0

사용자 이름과 암호를 사용하여 호스트 이름으로 로그인 할 수 있습니다 확인하십시오.

구성 :
기본적으로 MySQL은 로컬 호스트의 연결 만 수신합니다. mysqlworkbench와 같은 원격 연결을 사용하려면 /etc/my를 수정해야합니다.CNF

bind-address 127.0.0.1 

bind-address 0.0.0.0 

에하거나 완전히 줄을 주석으로 변경합니다. 이 작업이 끝나면 명령을 사용하여 MySQL을 다시 시작하십시오.

service mysql restart 

MySQL의 권한은 :
또는 초기 답변에 언급 된 것과 같은, 당신은 MySQL을 자체에서 권한을 부여 할 수 있습니다. 마찬가지로,

grant all privileges on *.* to 'root'@'your-public-ip' identified by 'your-password'