컴퓨터 / 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 daemon-reload

 systemctl start mysqld.service

Comments

공유지기 2019.03.24 15:53
그런데 phpmyadmin 이 로그인되지 않는다. 이 부분은 다시 좀 더 봐야 할 듯.
공유지기 2019.03.26 15:30
phpmyadmin이 로그인되지 않는 이유는 아파치쪽 설정에 mysql_socket 설정이 예전꺼로 되어 있기 때문이다. 따라서 apache, php 및 phpmyadmin을 다시 설치해 주어야 한다.
사랑방지기 2019.06.04 14:31
5번 필수. https://stackoverflow.com/questions/38529205/mariadb-cannot-start-after-update-warning-cant-create-test-file-home-mysql
공유지기 2019.10.31 15:27
DB 연결된 상태 확인 : https://sseung-fire.tistory.com/14
이야기꾼 2020.02.23 18:06
이것도 확인 요망. https://greatps1215.tistory.com/16

php.ini 수정

WL 핑구스티커 펭귄 핑구 핑가 다꾸 스티커 다이어리 노트북 핸드폰 꾸미기 스티커 다꾸 용품
칠성상회
스테들러 피그먼트라이너 흑색 수성펜 6본세트
칠성상회
WL 계기판 차량용 거치대 B형 스마트폰 차량 스파크
칠성상회
포켓몬카드 초전브레이커 1팩
칠성상회