728x90
[Linux 실습] MariaDB 기본 디렉터리 변경 및 데이터베이스 생성해 연동 확인
1. 기본 데이터 디렉토리 /DATA(추가 스토리지로 경로 변경)
- MariaDB systemctl stop으로 서비스 중지 후 진행
a. 기존에 설정된 디렉토리 경로 확인
mysql -u root -p로 MariaDB에 접속
SHOW VARIABLES LIKE 'datadir';로 경로 확인
>> 기본 디렉터리가 /var/lib/mysqld임을 확인
b. 이동할 디렉토리 생성 (mkrid /DATA) 후 동기화
동기화 명령어: rsync -av /var/lib/mysql/ /DATA
- rsync란? 네트워크를 통해서 로컬 서버와 원격 서버 간 데이터 동기화
>> cp와 rsync의 차이: rsync 는 변경된 파일에 대해서만 업로드 / cp 는 무조건 업로드를 하는 방식 (동일한 파일이 업로드 되어 있더라도, 다시 업로드를 진행)
- /DATA와 /var/lib/mysql/을 비교했을 때, 내용이 같음을 확인
c. vi /etc/my.cnf.d/server.cnf로 기본 디렉터리 지정
[mysqld]
data=/DATA (기본 디렉터리로 추가할 경로 입력)
d. MariaDB가 /root /home 디렉토리 접근 허용
- vi /usr/lib/systemd/system/mariadb.service
- /usr/lib/systemd/system/mariadb.service: systemd가 MariaDB 서버를 관리하는 방법을 정의하는 폴더
- ProtectHome=true를 false로 변경
e. chown mysql:mysql /DATA으로 기본 디렉터리 권한 설정
- MariaDB는 기본적으로 mysql 사용자와 그룹으로 실행되기 때문에 데이터 디렉터리와 그 안의 파일들에 대해 소유권과 권한을 설정해야 MariaDB가 정상적으로 데이터를 읽고 쓸 수 있음.
f. MariaDB 구동 (systemctl start mariadb)
- 서비스 구성 파일 수정하면 꼭 리로드해야 함. 그렇지 않고 systemctl start mariadb 했을 시에는 Warning 문구 나옴
systemctl start mariadb
Warning: The unit file, source configuration file or drop-ins of mariadb.service changed on disk. Run 'systemctl daemon-reload' to reload units.
systemctl daemon-reload
systemctl start mariadb
** MariaDB가 구동되지 않음 (문제)
systemstl daemon-reload를 하지 않고 start를 해 MaraiDB가 제대로 실행되지 않음. start 작업 종료 후 sudo kill를 이용해 MariaDB를 강제 종료한 후 데몬 리로드부터 다시 진행하였음.
<결과 확인>
mysql -u root -p로 MariaDB에 접속
select @@datadir;로 경로 확인
2. [본인 이니셜 db]로 데이터베이스 생성 후 확인
CREATE DATABASE sechoidb;
SHOW DATABASES;
- 변경한 기본 디렉터리에도 데이터베이스 생성되는지 확인 (ls /DATA)
'운영체제 > Linux' 카테고리의 다른 글
[Linux] 리눅스 명령어 정리 2 (0) | 2024.08.23 |
---|---|
[Linux] 리눅스 명령어 정리 1 (1) | 2024.08.22 |
[Linux 실습] MariaDB 설치 후 DB 포트 변경 (0) | 2024.08.13 |
[Linux 실습] crontab으로 명령어 작업 예약 후 확인해 보기 (0) | 2024.08.12 |
[Linux 실습] 서버에 명령어 히스토리 경로 변경해 보기 (0) | 2024.08.11 |