About Data/DB
[Linux][Mysql] DB 경로 변경 방법
Tradgineer
2020. 2. 4. 16:39
[ 작업 환경 ]
- Centos 7.5
- Mysqld 5.7
Centos 7 버전에서 mysql 설치 방법은 아래 링크 게시글 참조
https://growingsaja.tistory.com/39
1. rsync 설치
yum install rsync
2. 데이터 디렉터리 위치 확인
mysql -u root -p
select @@datadir;
필자 환경의 경우
/var/lib/mysql/
로 설정되어있습니다.
3. mysqld 정지
systemctl stop mysqld
4. 기존 경로에서 신규 경로로 복사
필자의 경우 기존 경로인 /var/lib/mysql 에서 /DB/ 로 copy했습니다.
rsync -av /var/lib/mysql* /DB/
-av 옵션의 a는 archive mode로, -r, -t(타입스탬프 보존), -l (심볼릭 링크 보존), -p(permission 보존), -g(g그룹 보존), -o(소유자 보존 - root 만 가능), -D(device, special 파일 보존)과 동일합니다.
v는 verbose로, 자세한 내용을 출력한다는 의미입니다.
5. data dir 위치 및 socket 위치 설정 변경 및 적용
# vim /etc/my.cnf
[mysqld]
datadir=/DB
socket=/DB/mysql.sock
[client]
socket=/DB/mysql.sock
systemctl start mysqld
6. 현재 DB의 데이터디렉터리 확인
mysql -u root -p
select @@datadir;
만약 아래와 같은 문구 발생되면서 로그인 실패시, 임시 비밀번호가 발급된 것이므로 확인 필요합니다.
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)
ㄴ> 임시 비밀번호 확인하여 입력 필요
cat /var/log/mysqld.log |grep "A temporary password is generated for root@localhost"
7. 정상적으로 잘 되는지 확인
mysql 내에서 Darabase, Table, Insert 등을 통해 정상인지 확인합니다.
서버 재부팅 후 정상 작동하는지 확인합니다.