Problem
local 에 test DB 를 만들어 신나게 환경설정을 하던 와중에 부장님께서 현재 진행 상태에 대해서 물으셨고 여차저차 작업을 진행중이라고 말씀드렸다. 팀장님께서는 개발용 DB 에 내가 만들어 놓은 임시 테이블들을 반영하기 위하여 내 local DB 로 접속 가능하게 해달라는 요청을 하셨고 난 내부망이니 당연히 되겠거니 하고 내부 IP와 DB 접속 정보를 알려드렸다. 하지만 접속이 실패하였고 mysql 은 localhost DB 의 외부 접근이 기본적으로 막혀있다는 걸 알았다.
Solution
일단 내 컴퓨터의 mysql 환경에 접속하기 위해서는 window 기준 cmd 창을 열고
mysqlsh
명령어를 입력하면 된다.
그럼 이런식으로 입력창이 Mysql JS 로 변경이 된다.
그 후
\connect root@localhost:3306
으로 들어간 뒤 패스워드를 눌러주면
접속 성공은 했다. 그런데 우리에게 참 거슬리는 문구가 있는데 프롬프트가 MySQL JS 라고 되어있다.
아니나 다를까 user 테이블을 조회해야하는데 쿼리문을 입력하면 문법에러가 계속 뜬다. 검색해보니 mysql shell 은 JS , Pyton 등
다양한 언어를 지원한다고 나와있다... 그럴 필요 없는데
쿼리를 사용하겠다는 명령어인 \sql 을 입력하면 다음과 같은 문구가 뜨면서 프롬프트가 sql 을 입력할 수 있게 바뀐다.
그 후엔
mysql> CREATE USER 'root'@'%' identified by '0000';
위 쿼리와 같이 사용자와 패스워드를 생성한다.
mysql> GRANT ALL PRIVILEGES ON *.* to 'root'@'%';
권한까지 할당 한 뒤에
mysql> flush privileges;
새로고침을 한다.
원래 이렇게 한 뒤에 접속이 된다고 하는데 필자는 되지 않아서 mysql 를 재부팅했다.
짜란~ 해결
'DB & SQL' 카테고리의 다른 글
DATE, DATETIME, TIMESTAMP 의 차이점 (1) | 2024.06.13 |
---|---|
[Mybatis]Hard Parsing 과 Soft Parsing 그리고 공통파싱 (0) | 2022.12.28 |