리눅스에 MySQL 설치해보기

sarang_daddy·2023년 2월 21일
0

리눅스(Linux)

목록 보기
2/2
post-thumbnail

리눅스(우분투) 환경에서 MySQL를 설치해보자.

How To Install MySQL on Ubuntu 20.04를 참고했습니다.

1단계 - MySQL 설치

1. 최근 패키지를 업데이트 한다.

sudo apt update

2. 패키지를 설치한다.

sudo apt install mysql-server

3. 서버가 실행중인지 확인한다.

sudo systemctl start mysql.service


2단계 - MySQL 구성

1. MySQL 프롬프트를 연다

sudo mysql

2. 루트 사용자의 인증 방법을 비밀번호 사용으로 설정한다. ('password'부분이 초기 비밀번호로 된다.)

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'password';

3. 변경 후 MySQL 종료한다.

mysql > exit

  • mysql_secure_installation를 설치 했다.

4. 다음 명령어로 보안 스크립트를 실행한다.

sudo mysql_secure_installation

  • 비밀번호 입력 후 변경할레? 라고 묻는데 여기서 반드시 No를 입력해야한다.

우분투 MySQL 비밀번호 설정 오류 해결하기

5. 이후 셋팅

  • "Remove anonymous users? (Press y|Y for Yes. any other key for No)" Y 클릭
  • 원격 IP 접속 허용 여부를 물어본다. Y 클릭
  • 기본 DB test를 유지할지 묻는 질문이다. Y로 지운다.
  • 변경된 설정 내역을 즉시 적용할 것인지 묻는 질문이다. Y 클릭

6. 다음 명령어로 암호를 입력하여 다시 들어간다.

mysql -u root -p

7. 그 다음 아래 명령어로 위에 설치한 보안 스크림을 기본 인증 방법으로 설정한다.

ALTER USER 'root'@'localhost' IDENTIFIED WITH auth_socket;


3단계 - 전용 MySql 사용자 생성 및 권한 부여

위에서 MySQL 데이터베이스를 관리하는 루트사용자 계정을 생성했다.
이 사용자는 MySQL 서버에 대한 전체 권한을 가진다.
루트사용자는 외부에서 사용하지 않는 것이 좋다.

때문에 이 단계에서 새 사용자 계정을 만들고 권한을 부여해보자.

1. 우선 루트 관리자로 mysql을 실행한다.

sudo mysql

2. 새로운 사용자를 생성한다.

CREATE USER 'sammy'@'localhost' IDENTIFIED BY 'password';
ex) CREATE USER 'sarang'@'%' IDENTIFIED BY 'sarang1234';
(@ 의미는 외부에서의 접근 허용)

MySQL 사용자 추가/ DB 생성 / 권한 부여 방법

3. 새로운 사용자에게 권한을 부여한다.

GRANT CREATE, ALTER, DROP, INSERT, UPDATE, INDEX, DELETE, SELECT, REFERENCES, RELOAD on . TO 'sammy'@'localhost' WITH GRANT OPTION;

4. 권한 설정 적용

FLUSH PRIVILEGES;
exit

5. 새로운 사용자로 로그인

mysql -u "new id" -p


4단계 - MySQL 테스트

1. MySQL이 제대로 작동되는지 테스트 하자.

systemctl status mysql.service

2. 실행되지 않는다면 아래 명령어를 입력한다.

sudo systemctl start mysql.

3. 관리자 전용유틸리티 mysqladmin로 확인하기.

sudo mysqladmin -p -u "user id" version

mysqladmin 실무활용


설치한 MySQL로 DATABASE 생성

1. root 계정으로 접속한다.

sudo mysql -u root -p

2. 데이터베이스 생성 (utf8은 한글깨짐을 방지한다.)

create database DB명 default character set utf8

3. 생성된 database 확인

show database


MySQL 외부접속을 위한 PORT 설정

1. MySQL PORT 확인.

show global variables like 'PORT';

  • 기본값 '3306'으로 세팅되어있다.

2. root로 접속 (sudo -i) 후 아래 입력

vim /etc/mysql/mysql.conf.d/mysqld.cnf

3. bind 항목에 # 주석처리

4. vim 저장 후 나오기

:wq

5. 접속가능 PORT 확인하기

netstat -tulpn

  • :::3306 확인되면 외부 접속이 가능해진다.
  • 보이지 않는다면 MySQL 서버 restart

우분투 MySQL 원격으로 접속하기
디비버 설치

profile
한 발자국, 한 걸음 느리더라도 하루하루 발전하는 삶을 살자.

0개의 댓글