반응형

mysql 24

latin1 로 저장된 db 를 euckr 또는 utf8로 변환하는 방법

예전에 latin1로 저장된 db를 그냥 옵기게 되면 한글이 깨져서 보이지 않게 됩니다. 그럴때 사용하기 위한 방법 입니다. 1. 백업하기 mysqldump -u{username} -p{password} {dbname} --default-character-set latin1 > {dump}.sql 여기서 제일 중요한 것이 --default-character-set latin1 입니다. 이것이 없으면 온전하게 백업이 되지 않으니 여러가지로 어렵습니다. 2. 문자셋 변환하기 (문제가 되는 것이 보통 이 과정에서 메모장이나 에딕터를 이용하게 되면 깨져서 복원을 할때 에러가 발생합니다.) utf8로 변환 할때 iconv -c -f cp949 -t utf-8 원본파일명 > 변환될 파일명.sql euckr 이라면 ..

mysql 2013.02.28

백업과 복구

MySQL의 데이터를 백업하는 방법은 크게 두가지로 분류 할 수 있다. 1. mysqldump를 이용한 text타입의 백업 방법. 2. 데이터파일 자체를 복사하는 백업 방법. 두가지 방법모두 장단점이 있으므로 용도와 필요에 맞게 사용하는 것이 좋다. 1. mysqldump를 이용한 백업(출처 : http://dev.mysql.com/doc/refman/5.1/en/mysqldump.html) mysqldump는 Igor Romanenko라는 사람이 만든 백업 프로그램이다. 이는 database나 database의 일부를 백업하는 목적이나 다른 시스템으로 옮길때 사용된다. 그리고 원하는 분리 문자를 넣을 수 있어 CSV파일 등으로 만들 수 있으며, XML포맷으로 만들 수도 있다. 굉장히 많은 옵션들을 제공..

mysql 2013.02.28

MySql 4.x 버젼과 MySql 5.x 버젼 password 함수 차이

서버를 이전했는데 Mysql 버젼이 달라서 로그인이 안 될 경우 대략 난감하다. mysql 4.0x 이하 버전에서는 password() 함수의 결과가 16bytes mysql 4.1x 이상 버전에서는 password() 함수의 결과가 41bytes 이 현상을 해결하기 위해서는 아래를 실행시켜야한다. 반대의 경우에는 0 sql_query("set old_passwords=1"); 또는 MySql 5.x버젼 사용자라면 password()함수 대신 old_password()함수를 사용하면 해결 할 수 있다.

mysql 2013.02.28

버전별 MySQL user , db , database 생성 삭제

버전별 MySQL user , db , database 생성하기 mysql 버전에 따라서 레코드 숫자가 틀려서 생성 할 때 마다 귀찮은 점이 있다. 적어 두고 생성시 복사해서 사용하는게 편리 하다. 반드시 ID , NAME , DATABASE 이름을 변경하여 사용하시기 바랍니다. MySQL 3 create database 데이타베이스명; insert into user values ('localhost','아이디',password('비밀번호'),'N','N','N','N','N','N','N','N','N','Y','N','N','N','N'); insert into db values ('localhost','아이디','디비이름','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y'); ..

mysql 2013.02.18

mysql 백업 스크립트 2

서버의 mysql 테이블별로 백업 #!/bin/sh # 작성일 : 2005/07/01 # 최종수정일 : 2005/09/14 # 제목 : 서버 서비스 상태 표시기 # 별도 수정 사항 : db root, 백업위치(변수 : dump_dir) #--------------------------------------------------------- dump_date=$(date +%Y%m%d-%H); dump_dir="/backup"; DB_user=""; DB_pass=""; DB_optimize_switch=0; # 만일 1이면 optimizing까지 for database in `/usr/local/mysql/bin/mysqlshow -u ${DB_user} -p${DB_pass} | awk -F" " '{..

mysql 2013.02.18

mysql 백업 스크립트

다들 아시겠지만, 데이터베이스 백업 스크립트입니다. 백업 위치에 따라, /home2/DATA/mysqldump/20050701/DB list..... /20050702/DB list..... /20050703/DB list..... 이런 식으로 DB 디렉터리 아래 DB 명 및 테이블이름.sql으로 쌓이게 될 겁니다. 매일 매일 백업한다는 가정 하에 7일 전 데이터는 무조건 삭제합니다. 도움이 되시길 바라면서... #!/bin/sh # 작성일 : 2005/07/01 # 최종수정일 : 2005/09/14 # 제목 : 서버 서비스 상태 표시기 # 별도 수정 사항 : db root, 백업위치(변수 : dump_dir) #---------------------------------------------------..

mysql 2013.02.18

스크립트를 이용한 mysql 백업하기

mysql에서는 mysqldump를 이용하여 백업을 수행 . mysqldump -u root(사용자명) -p mysql(데이터베이스이름) > mysqlbackup.sql(백업할파일이름) 1. 백업 스크립트(1) - backup_db.sh #!/bin/sh # DB backup script newfile=`date -d "0 days" +%Y%m%d%H%M%S` delfile=`date -d "-3 days" +%Y%m%d%H%M%s` echo === mysql delete : ${delfile} rm -rf ${delfile}.tar.gz rm -rf ${delfile} echo === mysql dump mysqldump -u x -p --default-character-set=utf8 mysql > ..

mysql 2013.02.18
반응형