컴퓨터 / 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 수정

3M 코맨드 와이어 훅 중형 17068 3개입
바이플러스
3M 프리미엄 스티커크리너 PIC10
바이플러스
3M 810 매직테이프 50mm x 65M
바이플러스
OPP 투명접착 8X20+4cm 200장
칠성상회