집 >
기사 > 데이터 베이스 > 로컬로 연결된 가상 머신 MySQL 프롬프트는 연결이 허용되지 않습니다.
로컬로 연결된 가상 머신 MySQL 프롬프트는 연결이 허용되지 않습니다.
咔咔원래의
2020-06-30 16:20:54154검색
❝
이 기사는 연결이 허용되지 않는다는 원격 MySQL 서버 프롬프트에 연결하는 로컬 Navicat 문제를 해결합니다. centos7.3 가상머신의 MySQL 데이터베이스로
연결 확인 후 이런 오류가 발생합니다
2. 문제 발견
처음에는 이 문제가 원격 연결 문제인 것 같습니다 얼핏 보면 이런 부분이라고 생각하기 어려울 수도 있겠네요. 카카가 이 문제를 차근차근 해결해 줄 것입니다.
먼저 가상 머신 터미널로 이동하여 MySQL에 연결합니다.
명령을 실행
한 다음 비밀번호를 입력하여 MySQL에 들어갑니다.
실행 지침현재 모든 데이터베이스를 볼 수 있습니다<img src="https://img-blog.csdnimg.cn/20200630153948713.png" alt="" style="max-width:90%">우리가 주로 집중해야 할 것은<code style="overflow-wrap: break - 단어; 여백: 0px 2px; 글꼴 계열: " operator mono consolas monaco menlo monospace break-all rgba inline-block padding: border-radius: height: line-height:>mysql이 라이브러리는 데이터베이스를 전환합니다. mysql 사용 code> , mysql 데이터베이스에 사용자 테이블이 있습니다. <img src="https://img-blog.csdnimg.cn/2020063015404939.png" alt="" style="max-width:90%">여기서 작은 점은 <code style="overflow-wrap: break-word margin: 0px 2px; - 계열: " operator mono consolas monaco menlo monospace rgb rgba inline-block padding: border-radius: height: line-height:>clear 는 화면을 지울 수 있지만 mysql에서 Clear를 실행하면 효과가 없습니다. show databases;可以查看到目前所有的数据库我们主要需要关注的是mysql这个库,切换数据库,执行命令use mysql,在mysql的这个数据库里边有一个user表。在这里说一个小小的点,在终端我们以往执行clear就可以清屏,但是在mysql中执行clear是没有作用的。
mysql 터미널의 화면 지우기 명령은 시스템 지우기🎜🎜좋아, 주제로 돌아가서, user 테이블에는 두 가지 정보만 필요합니다. 하나는 hos이고 다른 하나는 user입니다. 이를 쿼리하려면 쿼리 문을 실행해야 합니다. 🎜🎜위 그림에서 호스트 열은 사용자가 로그인할 수 있는 IP를 지정합니다. localhost인 경우 로컬 로그인만 가능합니다. , 원격 로그인이 불가능합니다. 🎜🎜이것이 우리 로컬 navicat이 mysql에 연결할 수 없는 이유입니다. 🎜🎜로컬 가상 머신이고 보안 문제가 없기 때문에 Kaka는 호스트를 %. 🎜
%는 와일드카드를 나타내며, 이는 모든 연결이 허용되고 IP가 제한되지 않음을 의미합니다.
참고: 프로덕션 환경에서는 문제를 방지하기 위해 호스트를 %로 설정할 수 없습니다. 그렇게 하면 보안 문제가 발생할 수 있습니다.
문제가 발견되었습니다. 다음에 해결해 봅시다.
3. 문제를 해결하세요
사용자 설정 호스트='%'(여기서 user='root';)를 업데이트하고, localhost를 %로 변경하여 모든 IP가 연결되도록 합니다. 여기에서 권한을 새로 고쳐야 합니다플러시 권한update user set host='%' where user='root';,将localhost修改为%,允许让所有ip连接。到这里还需要进行一次权限刷新flush privileges
本地navicta再次连接数据库。这个时候就可以了。
四、扩展
关于flush privileges
로컬 navicta가 데이터베이스에 다시 연결됩니다. 이것이 바로 이 시점입니다.
IV. Extension
🎜🎜🎜🎜정보권한 플러시언제 실행해야 합니까? 🎜🎜이 명령은 mysql 라이브러리의 사용자 및 권한 테이블에 있는 사용자 정보나 권한을 메모리로 추출합니다. 🎜🎜사용자 데이터 및 권한이 수정되고 데이터베이스를 다시 시작하지 않고 직접 적용하려면 이 명령을 실행해야 합니다. 🎜🎜즉, 이 명령은 사용자 데이터 및 사용자 권한이 수정될 때만 사용됩니다. 🎜
위 내용은 로컬로 연결된 가상 머신 MySQL 프롬프트는 연결이 허용되지 않습니다.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!
성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.