mariadb문제가 있어서 mariadb제거후 재설치를 목적으로한다.
기존 DB백업
1. 서비스가 동작중이라면 sql 파일로 바로 백업
/usr/local/mariadb10/bin/mysqldump -u"root" -p"비밀번호" DB명 > /volume1/mydb/DB명.sql
이렇게 백업할 수있다.
2. DB폴더를 통째로 백업
/usr/local/bin/mysql -u root -p
password:
MariaDB [(none)]> select @@datadir;
+---------------------------------------+
| @@datadir |
+---------------------------------------+
| /var/packages/MariaDB10/target/mysql/ |
+---------------------------------------+
접속해서 datadir의경로를 파악했으면,
백업할 위치를 만들어주고
mkdir /volume4/Backup/mysql-data
폴더째 복사를 해준다.
cp -R -p /var/packages/MariaDB10/target/mysql/* /volume4/Backup/mysql-data
위 경로가 사실 기본경로이므로, mariadb 서비스가 동작중이지 않다하더라도
이 방법으로 폴더째 백업을 할 수 있다.
3. 복원
mariadb를 삭제하고, 다시 설치한다.
mariadb를 중지 시킨다.
위와 역으로,
복사해두었던 /volume4/Backup/mysql-data 를 /var/packages/MariaDB10/target/mysql/ 로 복사한다
cp -R -p /volume4/Backup/mysql-data/* /var/packages/MariaDB10/target/mysql/
4. DB의 경로 변경이 필요할 경우,
mariadb를 재설치가 아니라 경로변경만 목적이라면, 2. 의 과정후
아래 설정파일을 편집한다.
vi /usr/local/mariadb10/etc/mysql/my.cnf
내용중에
[client]
..
socket = /run/mysqld/mysqld10.sock
..
[mysqld]
..
socket = /run/mysqld/mysqld10.sock
pid-file = /run/mysqld/mysqld10.pid
..
innodb_data_home_dir = /var/packages/MariaDB10/target/mysql
innodb_data_file_path = ibdata1:10M:autoextend
innodb_log_group_home_dir = /var/packages/MariaDB10/target/mysql
이 두부분만 옮긴 경로로 변경해주면 될것 같다.