리눅스에서 DB에 접근하려는데 접근 거부에러가 발생해서 요리조리 찾아보다가 다음과 같은 방법으로 해결하였다.
개인용 localhost:3306 환경이었으므로, 공용 프로젝트 환경에서는 권한 조회 정도로만 사용하고 요청은 별도로 하는 것이 맞겠다.
DB와 관련한 문제는 민감한데 아직 공부도 많이 안한 상태라, 관련 에러 또는 문제가 발생하면 당혹스러운 점이 많다ㅎ..
나의 경우는, MariaDB로 진행하였는데, MySQL도 전반적인 부분은 동일하다고 한다.
(틀린 점이 있다면, 별도의 참고가 필요 할 듯 한데...학원에서 MySQL 사용할 때에도 방법은 동일했다.)
✔ 해결 방법은 아래와 같은 순서대로 진행하였다.
1. 명령프롬프트(cmd)창 진입
2. cmd 에서 MySQL 또는 MariaDB 폴더의 bin 경로까지 이동 (ex. C:\Program Files\MariaDB 10.4\bin)
3. mysql -uroot -p 입력
4. 설정한 password 입력
5. MariaDB monitor 진입 성공
6. use DB명 → 해당 DB로 전환 (Ex. MariaDB [testdb]>...MariaDB의 경우, 옆에 현재 접속된 DB의 명칭이 보인다.)
7. select host, user from user; → PC에서 사용되고 있는 DB의 host와 user를 조회
8. create usercreate user '유저명'@'%' identified by 'password';
→ 전체 조회 기능을 가진 신규 User 생성 (건드릴만한 특정 계정이 보이지 않아 그냥 새로 만들기로 하였다.)
9. 만약, 신규 User 생성 중 오류 발생 시, flush privileges; 입력하여, grant table을 reload 해보자.
10. 생성 후, 해당 User로 접속 시, 거부 에러가 발생하지 않는 것을 볼 수 있다.
(추가) DB 생성 및 사용자 생성에 대한 포스팅도 작성해두었는데,
계정에 권한 부여(GRANT)를 통한 클라이언트 접근 범위를 지정해주는 것까지 다루었다.
또 다른 해결 방법이 될 것 같다!
2021/02/09 - [Database & SQL] - MySQL(MariaDB) DB 생성 및 접속
이 블로그는 개인이 혼자 공부해가며 내용을 정리하는 용도로 활용되고 있습니다.
잘못된 지식이나 이론을 게시하지 않도록 주의하고 있습니다.