데이터베이스

Total 205
Today 0
profile_image
윤진한
08-03-21 20:13 2개 2,760회
MySQL
Data 이전시 한글 깨짐

DB 덤프전 해당 캐릭터 셋을 확인후에.... 그 형태 그대로 덤프..
그리고 그걸 새로 옮기고 싶은 DB에 해당 캐릭터셋으로 설정 !!! (중요)

mysqldump -u username -p bugtracker -–default-character-set=latin1 > dump.sql
SQL문의 모든 latin1 을 utf8 로 변경 (sed나 perl스크립트로 가능)
mysql -u username -p –execute=”create database bugtracker2 default character set utf8;”
mysql -u username -p bugtracker2 -–default-character-set=utf8 < dump.sql

나름 한번 해보면 간단한 작업

글자 깨져서 고생하지 말자구요 ^__________________^

추천 0 비추천 0

댓글목록

슈퍼아이피님의 댓글

profile_image
슈퍼아이피 작성일

[www@ihelpers sql]$ /usr/local/mysql/bin/mysqldump database [tables] -uxxxx -pxxxx --default-character-set=latin1 > data.dmp

[www@ihelpers sql]$ head data.dmp
-- MySQL dump 10.9
--
-- Host: xxxxxxxxxxxxxxx    Database: dwarehouse
-- ------------------------------------------------------
-- Server version      5.0.41

/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;
/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;
/*!40101 SET NAMES latin1 */;


[www@ihelpers sql]$ find a1.sql -print -exec perl -p -i -e "s/NAMES latin1/NAMES euckr/g" {} \;


[www@ihelpers sql]$ head a1.sql
-- MySQL dump 10.9
--
-- Host: xxxxxxxxxxxxxxx    Database: dwarehouse
-- ------------------------------------------------------
-- Server version      5.0.41

/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;
/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;
/*!40101 SET NAMES euckr */;

[www@ihelpers sql]$ /usr/local/mysql/bin/mysql -uxxxxx -pxxxxxx 9fm < data.dmp

슈퍼아이피님의 댓글

profile_image
슈퍼아이피 작성일

MySQL 백업 및 복구

- MySQL 디렉토리 전체를 압축 백업하기
mysql dir : /var/lib (데이터베이스 디렉토리)
[root@byungun lib]# tar cvfpz mysql_dir_tar.gz /var/lib/mysql

- 특정 데이터베이스 백업과 복구
백업 형식 : mysqldump -u DB계정명 -p DB명 > 저장할파일명
복구 형식 : mysql -u DB계정명 -p DB명 < 저장할파일명

# mysql DB 백업
[root@byungun DB_backup]# mysqldump -u root -p mysql > mysqldb.sql
Enter password:

# mysql DB 생성
[root@byungun DB_backup]# mysqladmin -u root -p create mysql
Enter password:

# mysql DB 복구
[root@byungun DB_backup]# mysql -u root -p mysql < mysqldb.sql
Enter password:

- 특정 데이터베이스의 특정 테이블 백업과 복구
백업 형식 : mysqldump -u DB계정명 -p DB명 Table명 > 저장할파일명
복구 형식 : mysql -u DB계정명 -p DB명 < 저장할파일명

# mysql DB Table 백업
[root@byungun DB_backup]# mysqldump -u root -p testdb testtable > testtable_table.sql
Enter password:

# mysql DB Table 복구
[root@byungun DB_backup]# mysql -u root -p testdb < testtable_table.sql
Enter password:

- 여러 개의 데이터베이스 한 번에 백업과 복구
백업 형식 : mysqldump -u DB계정명 -p --databases [옵션] DB1 DB2 DB3  > 저장할파일명
복구 형식 : mysql -u DB계정명 -p < 저장할파일명

# mysql 여러 개의 DB 백업
[root@byungun DB_backup]# mysqldump -u root -p --databases tempdb testdb > various_db.sql
Enter password:

# mysql DB 복구
[root@byungun DB_backup]# mysql -u root -p < various_db.sql
Enter password:

- MySQL 전체 데이터베이스 백업과 복구
백업 형식 : mysqldump -u DB계정명 -p --all-databases > 저장할파일명
복구 형식 : mysql -u DB계정명 -p < 저장할파일명

[root@byungun DB_backup]# mysql -u root -p --all-databases > mysql_alldb.sql
Enter password:

s1.txt