Mysql 8 원격 액세스
나는 보통 원격 접근을 위해 MySQL을 올바르게 설정합니다.
그리고 저는 현재 MySQL 8에 갇혀있습니다.
첫번째는 mysql.conf.d/mysqld.cnf 상에서 bind-address line이 없어서 손으로 추가(bind-address 0.0.0)하여 '%'에서 사용자에게 접근 권한을 부여했습니다.
연결했을 때 "Authentication failed"(인증 실패)라는 메시지가 나타납니다.
그러나 로컬 호스트/커맨드 라인에서는 잘 작동합니다.
- 삭제 또는 주석 달기
bind_address
매개 변수 from themy.ini
파일.
(파일명은 OS에 따라 다릅니다.Linux에서 my.ini는 실제로 /etc/mysql/ 디렉토리에 있는 my.cnf입니다.)
- 서비스를 다시 시작합니다.
작성.
root
사용자(예: 'root@localhost'(로컬 액세스 전용)이므로 새 사용자):CREATE USER 'root'@'%' IDENTIFIED BY '123';
권한 부여:
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%';
DBA 사용자의 경우 추가
WITH GRANT OPTION
맨 끝에예.
CREATE USER 'root'@'%' IDENTIFIED BY '123' WITH GRANT OPTION;
GRANT와 함께 CREATE가 작동하지 않기 때문에?
MySQL 8은 더 이상 사용자를 생성할 수 없습니다.GRANT
, 그래서 에 오류가 있습니다.IDENTIFIED BY '123'
만약 당신이 그것을 사용하려고 한다면.GRANT
, 가장 일반적인 오류입니다.
MySQL 8의 원격 액세스:
1) 모든 호스트에서 액세스 허용
sudo nano /etc/mysql/mysql.conf.d/mysqld.cnf
bind-address = 0.0.0.0
2) 사용자가 어디서나 액세스할 수 있도록 허용:
mysql
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%';
UPDATE mysql.user SET host='%' WHERE user='root';
3) 인증을 암호로 변경
ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY 'ThePassword';
동일한 문제가 발생하여 MySQL Workbench에 연결하고 User 권한을 업데이트했습니다.
MySQL 버전 : 8.0.20 커뮤니티OS : 윈도우 10.
- MySQL Workbench 열기 --> 서버 --> 사용자 및 권한
- 사용자선택
- 호스트에서 액세스할 때 일치하는 호스트로 제한을 "%"로 변경합니다.
- 변경사항을적용합니다.
- 필요한 경우 MySQL 서비스를 다시 시작합니다.다시 시작하지 않아도 효과가 있었습니다.
스크린샷,
MySQL 8의 경우 mysqld.cnf 파일을 엽니다.
sudo nano /etc/mysql/mysql.conf.d/mysqld.cnf
bind-address 옵션을 수정하거나 추가합니다.
[mysqld]
bind-address = 0.0.0.0
mysql 서버를 다시 시작합니다.
sudo service mysql restart
언급URL : https://stackoverflow.com/questions/50570592/mysql-8-remote-access
'bestsource' 카테고리의 다른 글
자바스크립트로 로컬 파일 접근 (0) | 2023.11.05 |
---|---|
EVOPdf, WebAPI 및 AngularJS를 사용하여 PDF 생성 (0) | 2023.11.05 |
scanf를 사용하여 std:: 문자열로 읽습니다. (0) | 2023.11.05 |
C# 기본적으로 1장으로 Excel 워크북 만들기 (0) | 2023.11.05 |
Woocommerce에서 후크를 통해 루프 제품 이미지 사용자 정의 (0) | 2023.11.05 |