- mysql 4.0 dump
- mysql 4.1.22 업그레이드
- mysql 5.5 업그레이드
- 마리아 db 설치.
mysql 4.1 버젼에서 마리아db 로 변경하는 부분은 그냥 덮어 쓰면 됨.
문제는 mysql 4.0 에서 mysql 4.1 로 업그레이드 부분.
binary로 그냥 덮어써도 되지만,
field size 가 반으로 줄어 버리기 때문에 문제가 발생 할 수 있다고 함.그래서 dump 파일을 생성 해서 써야 함.
mysqldump -u root -ppass --opt --quick --quote-names --all-databases > allBackup.sql
-opt 옵션은 문제가 없다면 쓰는 게 좋음. 백업, 복구 시간을 엄청 단축시킴.
-quote-name 옵션은 테이블 필드명 중, sql 쿼리명이 들어가 있어서 문제를 발생시켜 넣어줌.
restore 완료후에는 mysql_install_db 를 실행 시켜줌.
아래는 마이그레이션시 사용한 스크립트.
#!/usr/bin/bash#mysql 4.1.22 설치#killall mysqldecho "kill mysql"service mysqld stoprm -rf /usr/local/mysql/cd /usr/local/src/mysql-4.1.22/make install #컴파일 되어 있음. 설치만 하면 됨./usr/local/mysql/bin/mysql_install_db chown -R mysql.mysql /usr/local/mysqlcp -f /usr/local/mysql/share/mysql/mysql.server /etc/init.d/mysqld service mysqld start#패스워드 설정/usr/local/mysql/bin/mysqladmin password 'test01'/usr/local/mysql/bin/mysql -uroot -ptest01 -e 'select now();' #그냥 확인용 or 복구 시간 확인. #echo $?#1 이면 제대로 안된거.#덤프 복구시 필요. 안하면 에러남./usr/local/mysql/bin/mysql -uroot -ptest01 -e "set global max_allowed_packet=1000000000;"/usr/local/mysql/bin/mysql -uroot -ptest01 -e "set global net_buffer_length=1000000;"#
완벽하지 않음.
마리아db 설치 완료 my.cnf 에 euckr 추가.
[mysqld]...#charset configcharacter-set-server=euckrinit_connect=SET collation_connection=euckr_korean_ci init_connect=SET NAMES euckr character-set-server=euckr collation-server=euckr_korean_ci...