1. 실행중인 mysql을 중지해야 된다.
/etc/init.d/mysql stop

2.인증 절차를 무시할 수 있는 모드로 mysql을 시작시킨다.
mysqld_safe --skip-grant-tables --user=mysql &

3. 인증을 무시한체 root 유저로 mysql을 접속한다
mysql -u root mysql

4. root의 비밀번호를 재설정한다.
mysql> update user set password=password('비밀번호') where user = 'root';
Query OK, 2 rows affected (0.01 sec)
Rows matched: 2 Changed: 2 Warnings: 0

mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)
mysql> exit;

5. mysql을 다시 시작한다.
/etc/init.d/mysql stop
/etc/init.d/mysql start

Posted by 꼼맹곰
,

1. /etc/my.cnf 변경
[mysqld]
datadir=/mysql/data <- 원하는 디렉토리로 변경

2. 구동 스크립트 변경 --datadir= 부분을 변경
mysqld_safe --datadir=/mysql/data

참고
변경할 디렉토리에 기존 유저와 똑같은 권한을 주어야한다.
예) chown mysql.mysql -R /mysql/data/
Posted by 꼼맹곰
,

해당 데이터의 언어에 맞게 백업 및 복원을 해야 됩니다.

현재 가장 많이 사용하는 euc-kr 기준으로 설명하겠습니다.

백업

mysqldump --default-character-set=euc-kr -u유저명 -p비밀번호 데이터베이스명 > 백업할 파일명

예) mysqldump --default-character-set=euc-kr -uboard -pboard_pass bbs > bbs.sql

복구

mysql default-character-set=euc-kr -u유저명 -p비밀번호 복구할디비명 < 복구할 파일명

예) mysql default-character-set=euc-kr -uboard -pboard_pass bbs < bbs.sql

Posted by 꼼맹곰
,