MySQL DataBase 재생성

| 2021년 3월 23일 | 0 Comments

안녕하세요 기술지원팀 이준우입니다.

이번에 소개할 글은 MySQL DataBase 재생성에 대하여 소개하겠습니다.

 

MySQL DataBase 재생성 하는 이유는?

MySQL을 사용중 디스크 용량이 가득차거나 /data 디렉토리 경로를 잘못 설정하거나 그외에 부득이하게 DB 디렉토리 경로를 수정해야 할 경우 디렉토리 재성성에하는 방법을 진행합니다.

 

테스트 환경

CentOS7m MySQL 5.7

DB 데이터 디렉토리 경로 확인합니다.

> select @@datadir;

테스트 환경은 /usr/local/mysql/data인점 확인되었습니다.

 

DB 데이터 디렉토리 변경을 진행해줍니다.

 

1.변경 전 mysql stop 해주셔야 합니다.

# stop을 하기 전 my.cnf 파일을 수정하게되면 PID가 맞지 않아 Error가 발생하기 때문에 작업 전(장애발생 후 작업 전) 꼭 STOP을 진행해주셔야 합니다.

 

2. 새로운 데이터 디렉토리 생성 및 소유권 변경 및 데이터 이전을 진행합니다.

# mkdir /usr/local/src/newdb – db 생성 

# chown -R mysql:mysql /usr/local/src/newdb – 소유권 변경 (mysql 실행 권한을 가진 계정)

# ls -al /usr/local/src |grep newdb – 소유권 및 디렉토리 확인 

# cp -arp /usr/local/mysql/data /usr/local/src/newdb –  /data 복사

 

#ls – /data 복사 확인해줍니다.

 

3. vi /etc/my.cnf 수정해줍니다.

datadir = /usr/local/newdb/data 수정!

 

4. data dir 수정 확인합니다.

# /etc/init.d/mysqld restart – mysql 재시작 후

# mysql -u root -p – mysql 접속

>select @@datadir; – 변경이 잘된 점 확인할수 있었습니다.

================================================================================================================================

만약 datadir 설정을 잘못하게 될시 예시를 보여드리도록 하겠습니다.

## /etc/my.cnf에 있는 datadir을 오타를 내보겠습니다.

## /etc/init.d/mysqld start 진행

datadir오타를 낸 후 PID Error가 발생하는 점 확인할수 있습니다.

 

## 추가로 mysql 죽지 않거나 실행이 되지 않을때는 mysql log 확인도 중요하지만 ps 명령어를 이용하여 살아있는 mysql 프로세스를 확인해보시는 방법도 있는 점 안내드립니다.

이상으로 MySQL DB 재생성을 마치겠습니다.

감사합니다.

Category: 솔루션/IT기타

Avatar

About the Author ()