[MySQL] CentOS 7 MySQL 설치 및 기동 방법

es.Seong·2024년 2월 20일

1. MySQL 설치

다운로드 주소
https://dev.mysql.com/downloads/repo/yum/

CentOS 7 버전에 설치하므로 Linux 7을 선택해주자.

No thanks ~를 클릭하면 설치파일을 다운로드하지만, yum 명령어로 설치하는 것이 더 편리하기 때문에 링크 주소만 복사해주자.

터미널에서 su- 명령어를 통해 root 계정을 사용하여 mysql을 설치한다.

yum install https://dev.mysql.com/get/mysql80-community-release-el7-11.noarch.rpm

설치 과정에서 전부 y를 눌러주면 정상적으로 설치가 된다.

그리고 mysql-server도 설치해주면된다.

yum install mysql-server

설치가 완료되었다면 mysql 서버를 start해보자

systemctl start mysqld

서버 상태 확인, 중지 및 재시작 명령어는 아래와 같다.

systemctl status mysqld
systemctl stop mysqld
systemctl restart mysqld

2. root 계정 비밀번호 변경

Mysql 8.x 버전의 경우 최초 실행 시 root 계정의 임시 비밀번호가 생성된다고 한다.
비밀번호가 생성되는 경로는 /var/log/이다.

grep "temporary password" /var/log/mysqld.log

명령어 실행 결과 다음과 같이 root계정의 임시 비밀번호가 출력된다.

3. Mysql 접속

mysql -u root -p

2번에서 확인했던 임시 비밀번호를 입력해보자. 그러면 로그인이 될 것이다.

4. root 계정 비밀번호 변경

임시 비밀번호로 로그인 후 Mysql 명령어를 입력하면 다음과 같은 오류가 발생한다.

ERROR 1820 (HY000): YYou must reset your password using ALTER USER statement before executing this statement

해결방법은 ALTER USER 명령어를 통해 비밀번호를 변경해주면 해결된다.

ALTER USER 'root'@'localhost' IDENTIFIED BY '비밀번호';
flush privilieges;

5. Mysql 관리자 계정 생성

create user 'esseong'@'%' identified by '비밀번호';
grant all priviliges on . to 'esseong'@'%';
flush priviliges; -- 수정 정보 반영

여기서 %는 IP 제한이 없는 모든 원격지 IP이며, .는 모든 DB에 대해 접근 권한을 부여하는 것이다.

6. 외부 접근 허용

6-1. /etc/my.cnf 수정

vi /etc/my.cnf

위 명령어를 실행 후 [mysqld] 아랫부분에 다음 코드를 추가한다

bind-address =0.0.0.0
port =3306

저장 후 mysql을 재기동한다.

systemctl restart mysqld

6-2. 방화벽 허용

firewall-cmd --permanent --add-port=3306/tcp
firewall-cmd --reload
firewall-cmd --list-all

6-1에서 입력한 포트의 방화벽을 허용해준다.

위 설정을 모두했다면 mysql을 외부 PC에서 접근 및 사용이 가능할 것이다.

다음으로 DBeaver에서 Mysql을 연결하는 방법 이어서 적도록 하겠습니다.
감사합니다.

profile
Graduate student at Pusan National University, majoring in Artificial Intelligence

0개의 댓글