COMING SOON 🚀

mysql 데이터 경로 바꾸기

· 10년 전 · 1497

MYSQL에서 데이터가 쌓이는 경로를 바꾸는 방법입니다.

아마도 이 방법을 사용하시는 분들은 현재 mysql 데이터가 쌓이는 파티션에 디스크 용량이 가득차서 바꾸는 경우가 많으실겁니다.


1) 먼저, 실행중인 웹서버와 MYSQL을 중지 합니다.


2) /usr/local/mysql/data 를 원하는 곳(파티션)으로 복사합니다.

아마 /usr/local/mysql 경로에 mysql을 설치하셨다면

mysql에 쌓이는 데이터는

/usr/local/mysql/data/DB명 폴더에 저장됩니다.

이 폴더를 통째로 원하는 곳으로 복사합니다.

[root@node2 data]# cp -a /usr/local/mysql/data/*  ./


* 여기서 반드시 주의하셔야 할것은 새로 옮기는 폴더의 소유자가 mysql 계정이어야 합니다.

chown 명령어를 통해 특정 폴더의 소유자를 mysql로 변경합니다.

chown mysql.mysql /home/test/mysql/data


3) my.cnf 추가

이제 새로 옮긴 데이터 경로를 입력해줘야 합니다.

mysql의 환경설정이 담겨 있는 my.cnf 파일을 수정해야 합니다.

my.cnf 파일을 열어보세요.

[mysqld]
datadir=/home/test/mysql/data
port            = 3306
socket          = /tmp/mysql.sock
skip-locking
key_buffer = 384M



아마도 기본설치 하여 datadir을 바꾸지 않으셨다면

datadir 이라는 항목이 없을텐데 직접 추가해서 넣으시면 됩니다.


자 이제 완료되었습니다.

/etc/init.d/mysqld 파일에 별다른 수정을 하지 않으셨다면

my.cnf 파일의 변경 만으로도 데이터 경로가 바뀌어 적용됩니다.


이제 mysql 과 웹서버를 실행하시면 됩니다.


만약 경로가 바뀌지 않는다면

여러분들의 mysql 실행 스크립트에 datadir을 설정하는 내용이 포함되어있지는 않은지 확인해보세요.

/etc/init.d/mysqld, /etc/rc.d/init.d/mysql 과 같은 폴더의 스크립트를 확인해보세요.



위 작업을 마치고 mysql을 실행중에 아래와 같이 에러가 난다면

111213 20:34:12  mysqld started
111213 20:34:12  InnoDB: Started; log sequence number 0 3761569
^G/usr/local/mysql/libexec/mysqld: File './mysql-bin.000022' not found (Errcode: 13)
111213 20:34:12 [ERROR] Could not use mysql-bin for logging (error 13). Turning logging off for the whole duration of the MySQL server process. To turn it on again: fix the cause, shutdown the MySQL server and restart it.
111213 20:34:12 [ERROR] Aborting


error code 13 에러가 난다면 아마도 여러분은 새로 변경한 폴더의 소유주가 mysql로 되어있는지 다시 확인해보세요.

또는 permission을 확인해보세요.

|
댓글을 작성하시려면 로그인이 필요합니다.

프로그램

+
제목 글쓴이 날짜 조회
10년 전 조회 1,667
10년 전 조회 1,357
10년 전 조회 1,603
10년 전 조회 2,191
10년 전 조회 1,506
10년 전 조회 1,576
10년 전 조회 1,406
10년 전 조회 2,485
10년 전 조회 2,103
10년 전 조회 1,692
10년 전 조회 1,621
10년 전 조회 1,449
10년 전 조회 1,569
10년 전 조회 2,242
10년 전 조회 2,292
10년 전 조회 2,936
10년 전 조회 2,064
10년 전 조회 1,928
10년 전 조회 2,441
10년 전 조회 1,554
10년 전 조회 1,528
10년 전 조회 1,500
10년 전 조회 1,506
10년 전 조회 1,586
10년 전 조회 1,687
10년 전 조회 1,909
10년 전 조회 1,457
10년 전 조회 1,971
10년 전 조회 1,906
10년 전 조회 1,652
10년 전 조회 1,530
10년 전 조회 1,505
10년 전 조회 1,561
10년 전 조회 1,528
10년 전 조회 1,524
10년 전 조회 1,858
10년 전 조회 1,430
10년 전 조회 1,537
10년 전 조회 1,698
10년 전 조회 1,593
10년 전 조회 2,317
10년 전 조회 2,130
10년 전 조회 1,580
10년 전 조회 1,547
10년 전 조회 1,828
10년 전 조회 1,579
10년 전 조회 1,468
10년 전 조회 1,532
10년 전 조회 1,480
10년 전 조회 1,498
10년 전 조회 1,465
10년 전 조회 1,703
10년 전 조회 3,551
10년 전 조회 1,669
10년 전 조회 1,411
10년 전 조회 1,475
10년 전 조회 1,496
10년 전 조회 2,826
10년 전 조회 2,709
10년 전 조회 2,107
10년 전 조회 2,418
10년 전 조회 2,573
10년 전 조회 2,503
10년 전 조회 1,876
10년 전 조회 1,586
10년 전 조회 2,120
10년 전 조회 1,677
10년 전 조회 1,417
10년 전 조회 1,728
10년 전 조회 2,435
10년 전 조회 2,105
10년 전 조회 1,580
10년 전 조회 2,131
10년 전 조회 6,152
10년 전 조회 1,624
10년 전 조회 2,704
10년 전 조회 2,066
10년 전 조회 2,567
10년 전 조회 2,310
10년 전 조회 1,770
10년 전 조회 2,317
10년 전 조회 1,938
10년 전 조회 1,528
10년 전 조회 1,504
10년 전 조회 1,750
10년 전 조회 2,261
10년 전 조회 1,710
10년 전 조회 1,977
10년 전 조회 1,825
10년 전 조회 1,605
10년 전 조회 1,889
10년 전 조회 1,427
10년 전 조회 1,649
10년 전 조회 1,573
10년 전 조회 1,903
10년 전 조회 2,116
10년 전 조회 2,026
10년 전 조회 1,720
10년 전 조회 2,065
10년 전 조회 1,854