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

es.Seong·2024년 2월 20일
0
post-custom-banner

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
post-custom-banner

0개의 댓글