MySQL의 권한 및 설정

오성민·2021년 1월 14일
1

1.서버 MySql에서 외부접속 IP 허용 방법

HeidiSql툴을 통해 서버의 DB 접속시 아래와 같은 알럿 발생

javax.servlet.ServletException: java.sql.SQLException: null, message from server: "Host 'xxx.xxx.xxx.xxx' is not allowed to connect to this MySQL server"

외부에서 접속 가능하도록 권한을 부여해야 한다.

mysql -uroot -p
>엔터
Enter password: 패스워드
>엔터

로 mysql에 접속한다.

mysql> use mysql;
>엔터
Database changed
select host, user from user;
>엔터

+-----------+------+
| host | user |
+-----------+------+
| 127.0.0.1 | root |
| ::1 | root |
| localhost | |
| localhost | root |
+-----------+------+
4 rows in set (0.00 sec)

위와 같은 결과가 나올 것이다.

GRANT ALL PRIVILEGES ON DB명.* TO 사용자계정@'IP주소' identified by 'password';
>엔터

ex) mysql> grant all privileges on mysql. to 'root'@'%' identified by '비밀번호';
ex) mysql> grant all privileges on mysql.
to 'root'@'xxx.xxx.xxx.xxx' identified by '비밀번호';

  • 처음 알럿 문구에 나왔던 IP(xxx.xxx.xxx.xxx)를 허용해주면 된다.
  • IP주소 부분을 %로 지정하면 모든 외부의 IP를 모두 허용된다.
mysql> flush privileges;
>엔터
select host, user from user;
>엔터

+-----------+------+
| host | user |
+-----------+------+
| % | root |
| 127.0.0.1 | root |
| ::1 | root |
| localhost | |
| localhost | root |
+-----------+------+
5 rows in set (0.00 sec)

2.MySql/MariaDB 버전 확인하기
(1) 서버에서 확인

mysql --version
>엔터

(2) DB에서 확인

mysql -u root -p
>엔터
Enter password:
>비밀번호 입력 후, 엔터
select version();
>엔터

  1. MySQL 테이블 및 데이타베이스 이름 대소문자 구분 설정

Kithub님 블로그 참조

https://www.lesstif.com/dbms/mysql-14745775.html

  1. 그외 기타 명령어
    (1) 데이터베이스 생성 : create database 데이터베이스이름;
    ex) create database 'pcm';
    (2) ROOT계정 설정 : mysqladmin -u root -p password '설정할 비밀번호'
    ex) mysqladmin -u root -p password '1234';
    (3) DB접속 : mysql -u root -p
    ex) mysql -u root -p
    (4) mysql접속 : use mysql;
    ex) use mysql;
    (5) db 계정정보 : select host, user from user;
    ex) select host, user from user;
    (6) MariaDB 서버시작 : sudo service mariadb start
    ex) sudo service mariadb start
    (7) db 계정생성 : create user 계정명@ip identified by '비밀번호';
    ex) create user 'root'@'127.0.0.16' identified by '1234';
    (8) db 계정삭제 : drop user 계정명@ip;
    ex) drop user 'pco'@'1.232.94.16';

이후 지속적으로 추가 예정

profile
끊임없이 공부하고 배우자!

0개의 댓글