Study/Database

[Linux] DB 계정생성 및 db 생성

nam-willow 2024. 12. 23. 10:12

만약 리눅스 환경설정이나 mysql설정이 되어있지 않는다면 해당 블로그 글을 참고하길 바랍니다.

 

개발환경 구축하기(리눅스, mysql, node.js 등)

 

[Linux] 초기세팅 | 개발환경 구축(node.js, mysql, linux, git)

개발서버-구축 시리즈 | 개발서버 구축 - nam-willow.log명령을 사용하여 cURL(명령줄을 사용하여 인터넷에서 콘텐츠를 다운로드하는 데 사용되는 도구)을 설치합니다nvm, node.js, pm2가 기본적으로 설

nam-willow.tistory.com

 


 

 

1. MySQL 콘솔에 접속하기

MySQL 서버에 접속합니다. MySQL root 사용자로 접속

mysql -u root -p

 

sudo mysql -u root

 

2. MySQL 콘솔에서 사용자 생성 명령 실행

새로운 사용자 admin을 생성하고, 비밀번호를 '비밀번호'로 설정

//ex1) 내부접근 허용 사용자 추가
CREATE USER 'admin'@'localhost' IDENTIFIED BY '비밀번호';

//ex2)외부 접근을 허용하는 사용자 추가
create user 'admin'@'%' identified by '비밀번호';

//ex3)특정 ip만 접근을 허용하는 사용자 추가
create user 'admin'@'123.456.789.100' identified by '비밀번호';

//ex4)특정 ip 대역을 허용하는 사용자 추가
create user 'admin'@'192.168.%' identified by '비밀번호';

 

 

3. 현재 사용자 확인

mysql> SELECT user(), current_user();
+----------------+----------------+
| user()         | current_user() |
+----------------+----------------+
| root@localhost | root@localhost |
+----------------+----------------+
1 row in set (0.00 sec)

 

3. 권한 부여

사용자 생성 후 해당 사용자에게 권한을 부여해야 합니다.

이렇게 하면 admin 사용자가 MySQL에 접근할 수 있는 모든 권한을 부여받게 됩니다.

위에서 외부 허용으로했는지 ip만 허용했는지에 따라 @뒤에는 달라진다.

GRANT ALL PRIVILEGES ON *.* TO 'admin'@'localhost';
FLUSH PRIVILEGES;

 

 

4. mysql 종료

exit;

 

 

 

5. nfw(방화벽)설정

- 상태확인

ubuntu@DESKTOP-6M7MTUA:~$ sudo ufw status
Status: inactive   // 연결안되있음

 

 

- 3306포트확인

ubuntu@DESKTOP-6M7MTUA:~$ sudo netstat -tuln | grep 3306
sudo: netstat: command not found //안되있음

 

 

-  3306포트 켜짐 확인

// 1. 
ubuntu@DESKTOP-6M7MTUA:~$ sudo apt update
....
sudo apt install net-tools


// 2. 
ubuntu@DESKTOP-6M7MTUA:~$ sudo netstat -tuln | grep 3306
tcp        0      0 0.0.0.0:3306            0.0.0.0:*               LISTEN     
tcp        0      0 127.0.0.1:33060         0.0.0.0:*               LISTEN

 

 

 

 

6. 데이터 베이스 생성

- MySQL에 접속

mysql -u admin -p

 

  • 데이터베이스 생성: 접속한 후, new_project라는 이름의 데이터베이스를 생성합니다.
CREATE DATABASE new_project;

 

  • 데이터베이스가 생성되었는지 확인: 데이터베이스 목록을 확인하여 제대로 생성되었는지 확인합니다.목록에 new_project가 있는지 확인하세요.
SHOW DATABASES;