컴퓨터 / Computer

mysql data 폴더 변경 하기

Oracle MySQL Cloud Service 




보통 MySQL이나 MariaDB를 설치하면 data 파일을 /var/lib/mysql 폴더 아래에 둔다. 그런데 폴더를 옮길 때가 가끔 있다. 이 글은 그런 경우를 대비해서.

 

 - CentOS 7 기준 



0. 작업 전 DB 및 폴더 백업은 필수


1. 폴더 생성

 이동할 폴더를 아래와 같이 생성한다.


 mkdir  /home/mysql/data 


해당 폴더에 권한 설정을 한다.



    chown -R mysql:mysql /home/mysql/data 


2. mysql shutdown 


 systemctl stop mysqld.service



3. 복사하기 


    rsync -av /var/lib/mysql /home/mysql/data 



4. 설정 파일 수정 - /etc/my.cnf 



[mysqld]

datadir=/home/mysql/data/mysql

socket=/home/mysql/data/mysql/mysql.sock

 

[client]

socket=/home/mysql/data/mysql/mysql.sock 



* 설정 파일을 수정하지 않고 ln 로 symbolic link를 달아 줄려고 했는데, 잘 되질 않았다. 시스템에서 쓰는 거라 그런가.



5. 파일 수정 :https://stackoverflow.com/questions/38529205/mariadb-cannot-start-after-update-warning-cant-create-test-file-home-mysql


/var/lib 이외 폴더에서 mysql data 를 쓸 경우에는 하나를 더 수정해 주어야 한다.


  파일 위치 :    /usr/lib/systemd/system/mariadb.service 


  ProtectHome=true


    ->    ProtectHome=false


6. mysql start 


 systemctl start mysqld.service

Comments

공유지기 03.24 15:53
그런데 phpmyadmin 이 로그인되지 않는다. 이 부분은 다시 좀 더 봐야 할 듯.
공유지기 03.26 15:30
phpmyadmin이 로그인되지 않는 이유는 아파치쪽 설정에 mysql_socket 설정이 예전꺼로 되어 있기 때문이다. 따라서 apache, php 및 phpmyadmin을 다시 설치해 주어야 한다.
사랑방지기 06.04 14:31
5번 필수. https://stackoverflow.com/questions/38529205/mariadb-cannot-start-after-update-warning-cant-create-test-file-home-mysql

더뉴아반떼 스마트키케이스 천연가죽 키홀더
칠성운영자
아트사인 메모보드(검정-A3-PP1004)
칠성운영자
메모보드(A4)파랑/210*297*1.5T(PP1001)(8844)
칠성운영자
(JN) Happy Birthday 무지개 솜방울 꼬깔모자
칠성운영자