>데이터 베이스 >MySQL 튜토리얼 >MySQL에 원격으로 접속할 수 없는 문제를 해결하는 방법을 가르쳐주세요.

MySQL에 원격으로 접속할 수 없는 문제를 해결하는 방법을 가르쳐주세요.

怪我咯
怪我咯원래의
2017-06-23 13:15:401791검색

요즘 많은 인터넷 기업에서 mysql 데이터베이스의 활용은 거침없는 트렌드가 되었기 때문에 프로젝트 초기에 자주 하는 일은 Linux 서버를 찾아 그 위에 mysql을 설치한 후 데이터 테이블 가져오기 작업을 시작하는 것인데, 하지만 서버의 원격 연결을 항상 점유할 수는 없기 때문에 원격 도구를 사용하여 데이터베이스를 운영하는 경우가 많습니다. 그러나 다음과 같은 상황도 직면하게 됩니다.

MYSQL CONNECT ERROR – 1130:Host ’202.43.**.**’ is not allowed to connect to this MySQL server“

위와 같이 나타납니다. 연결을 거부하는 근본적인 이유는 원격 mysql 계정 생성 시 접속 계정의 로그인이 제한됩니다. 즉, mysql이 위치한 현재 설치 서버를 제외하고, 사용자 이름과 비밀번호가 정확하더라도 다른 IP(호스트)는 접속이 허용되지 않습니다. ; 사실 MySQL이 기본적으로 원격 제어를 지원하지 않는 것은 아니지만, MySQL의 기본 사용자 루트는 기본적으로 원격 제어를 지원하지 않습니다. 직설적으로 말하자면, 루트 사용자의 호스트는 127.0.0.1입니다. (localhost) 기본적으로 가장 쉬운 방법은 루트 권한을 수정하지 않고 원격 액세스를 지원하는 사용자를 만드는 것입니다. 그러나 루트 원격 작업을 사용해야 하는 경우에는 방법이 없습니다. 이를 해결하기 위한 두 가지 솔루션:

① etc/mysql/my.cnf

의 [mysqld] 섹션에 있는 / 주석 처리 바인드 주소 = 127.0.0.1 ② mysql -uroot -p를 사용하여 mysql에 로그인한 다음 다음 방법을 사용하여 원격 액세스를 활성화합니다.

#mysql -u root -p
#*******(密码,默认的密码是空)
mysql>use mysql;
mysql>update user set host = '%' where user = 'root';
mysql>flush privileges;

코드를 실행하면 루트 사용자에 해당하는 호스트가 %임을 알 수 있습니다. 이는 아래와 같이 모든 IP 연결이 허용됨을 의미합니다.

MySQL에 원격으로 접속할 수 없는 문제를 해결하는 방법을 가르쳐주세요.

위의 설명 과정으로 인해 일부 mysql 사용자의 경우 mysql의 기본값은 비밀번호가 비어 있어도 별로 상관하지 않으므로 방금 mysql을 설치한 모든 사용자에게 알림을 제공합니다. , 빈 사용자를 지우고 시간에 맞춰 비밀번호를 변경하는 것을 기억하세요. 이 두 프로세스를 다음과 같이 간략하게 기록해 보겠습니다.

출처 :MySQL 데이터베이스 릴리스 버전에 대한 지식 설명

mysql -u root -p
mysql>select user,host,password from mysql.user;
mysql>drop user ''@localhost;
mysql>update mysql.user set password = PASSWORD('*********') where user='root';
mysql>flush privileges;

실행 프로세스는 다음과 같습니다.

MySQL에 원격으로 접속할 수 없는 문제를 해결하는 방법을 가르쳐주세요.

위 내용은 MySQL에 원격으로 접속할 수 없는 문제를 해결하는 방법을 가르쳐주세요.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.