MySQL, MariaDB AES 암복호화 함수 호출

오랜만에 작성하는 SQL 관련 포스트

 

"INPUT_DATA"는 입력 데이터

"ENCRYPT_KEY", "DECRYPT_KEY"는 AES 암복호화할때 사용하는 암호키(SECRYPT_KEY)

암호화 함수 호출

HEX(AES_ENCRYPT("INPUT_DATA", "ENCRYPT_KEY");

 

복호화 함수 호출

AES_DECRYPT(UNHEX("TABLE's COLUMN name"), "DECRYPT_KEY")

 

 

Buy me a coffeeBuy me a coffee
저에게 메일로 MySQL User Conference Korea -2007가 왔었는데, 정말 듣고 싶은 것을 발표한다네요.
메일을 보고 나서 가고 싶다는 생각이 굴뚝같았습니다.
듣고 싶은 행사 있어서 시간대를 보니 OTL
아래는 메일 원문이네요.
<행사명> MySQL User Conference Korea -2007
<장소> Central City Convention Hall (체리홀)- 지하철 3&7호선 고속버스터미널역

<Agenda> Opening  13:00 ~ 13:15 LDS CEO
         Session 1 13:15 ~ 14:00 Overview of MySQL HA Solutions
                                 (Jimmy Guerrero-Senior Product Manager)
         Session 2 14:00 ~ 14:45 Web 2.0 and Emerging Web Technologies
                                 (Brian Acker-director of Architecture)
         Break    14:45 ~ 15:05     Break Time
         Session 3 15:05 ~ 15:50 Migration from Oracle to MySQL (Jimmy Guerrero)
         Session 4 15:50 ~ 16:35 MySQL 5.1 in depth (Brian Acker)
         Break     16:35 ~16:45    Break Time
         Session 5 16:45 ~ 17:30 MySQL Enterprise (Daniel Saito-Sales Engineering)
         Closing   17:30 ~17:50 LDS

http://www.linuxdata.co.kr/mysql_event/index.html

<초대글>
안녕하십니까? 리눅스데이타시스템(LinuxdataSystem:LDS)입니다.
저희 리눅스데이타시스템은 이번에 MySQL AB사와 한국 에이전시 계약을 맺고 2007년 9월 14일 한국에서 처음으로 MySQL User Conference Korea-2007을 개최합니다.

"MySQL과 함께 도약하십시오"라는 테마를 가지고 MySQL Community 와 개발자 및 DBA를 위한 최근의 Database 이슈 및 팁 또한 Enterprise 고객사의 성공사례 및 Web2.0 Sites과 같은 기술적인 정보에 대해서 논의 합니다. 또한, 이번 컨퍼런스에서는 현재 가장 큰 이슈인 MySQL HA(High Availablity)솔루션 및 오라클에서 MySQL로의 마이그레이션에 대한 Session 있을 것입니다.
.
현존하는 데이터베이스와 잘 융합되면서 동시에 훨씬 덜 복잡한 솔루션을 제공하는 MySQL의 가치를 컨퍼런스에 오셔서 직접 확인하십시오. 오후 1:00분부터 오후 5:50까지 5개의 세션을 MySQL사의 엔지니어가 진행할 것입니다.

MySQL과 오픈소스에 관심 있는 모든 분들의 많은 관심과 참여 바랍니다.
바로 지금 사전등록 하십시오.


아악, 시간대가 대략 겹칩에 난감 -ㅅ-
OS, 오토마타, DB수업 시간과 겹치는 이런 좋은 시간대에 ㅠㅠ

아, 수업 쨀수도 없을 노릇이고 ㅠㅠ (외계어로 수업하는 OS 수업 놓치면 내용 따라가기 힘들어서 -_ㅠ)

정말 가고 싶은 것들이 주말에 안하고 평일날 하면 정말 ㅠㅠ (수요일 빼놓곤 다 오후에도 수업있음 -ㅅ-)
하악하악, 가고 싶어 ;ㅁ;
Buy me a coffeeBuy me a coffee
내가 서버관리하는 서버에 MySQL DB복구시키는데 euc-kr와 latin1, UTF-8이 혼재되어서 복구하는데 죽는줄 알았다 ㅠㅠ

이번에 작업한것 다음 서버관리자에게 편하게 하기 위해서 UTF-8로 싹다 바꿀까 고민중이다.
UTF-8로 바꿀려면 모든 사용자들의 문자셋을 UTF-8로 바꿔야하는 귀차니즘도 있고 등등

그래도 남의 자료를 건드릴수도 없고 -_-;; 아 고민된다.

저번 글 : [꼬인 DB를 복구 완료 및 셋팅중.] 에 달린 댓글입니다.
daybreaker님이나 cypher님처럼 UTF-8이 이제는 대세같긴해도 아직도 EUC-KR를 쓸려는 사람도 있어서 OTL

아, 대세를 따라서 피를 보더라도 UTF-8로 대동단결이 살길이라고 생각하고 옮겨버릴까?

Buy me a coffeeBuy me a coffee
제가 맡고 있는 웹서버의 DB가 꼬여서 한글을 제대로 보여주지 못한 것을 해결하였습니다.
이 짓 한다고 거의 이틀을 잡아먹은 듯 하군요. 이제야 해결방법을 찾았으니, 다음 서버운영자에게 운영을 매끄럽게 하기 위해서 문서화 작업을 해야할듯 하군요.

Linux 서버를 다시 셋팅할때에는 MySQL자료를 백업을 받고 셋팅을 하여야 합니다.
서버에 있는 MySQL자료를 전부 백업 받는 방법은 이렇게 합니다.
# mysqldump -u root -p --all-databases > backup.sql
(backup.sql은 백업할 파일의 예를 듦)

백업 받은 자료에 내용을 확인합니다. 그런데 한글이 깨진다면 대책이 없을 것이죠?

mysql의 인코딩 설정이 서버마다 다르기 때문에 dump 할때 한글이 깨지는 문제가 생긴다고 하더군요. 그리고 dump가 안된다고 에러가 난다면 --force를 때려 넣으시야 함.
dump 했을때 한글이 깨지는 경우
# mysqldump -u root -p --all-databases --force --default-character-set=latin1 > backup.sql

이렇게 해서야 겨우 dump 백업을 가까스로 마쳤습니다. 이거때문에 하루는 버렸습니다.ㅠㅠ

참고자료 : dump할때 한글 깨짐 방지
(원문을 트래백할려고 해도 트래백이 안되군요, 그래서 링크 걸었습니다.

백업받은 파일을 vi로 엽니다. 여기서는 다 latin1로 설정되어 있어서 다른 DB에 올릴경우 당근 한글 깨지고 홈페이지 복구를 못시킵니다.
이거 문자 인코딩이 latin1이라 되어있어서 vi로 latin1을 euckr로 치환을 하고 나서 저장합니다.
그러면 복구 할때 문자코드가 euckr로 되어서 백업을 쉽게 할수 있죠.

dump로 백업받은 파일들은 이렇게 복구를 합니다.
mysql -u root -p --force --default-character-set=euckr < backup.sql

이렇게 하면 DB복구 완료 :D 이렇게 간단한것 알아내려고 밤을 샜습니다. 이건 애니를 볼수 있는, 게임을 할수 있는 시간을 빼았겨서 까악 ㅠㅠ

(※ 다음에는 서버 운영할시 일주일에 한번은 복구 스크립트넣고 재부팅 시켜서 하드디스크 상태를 봐야할듯 합니다. 서버가 하드디스크 고장에 맛가도 DB자료는 다행이도 항상 잘 남겨져 있어서 다행 ㅠㅠ)

다시 MySQL를 5로 깔았다. dump한 DB자료를 다시 넣으니까 한글이 제대로 들어간다. 휴
이번에 설정을 다시 제대로 해서 다행. 이번에 학과 서버관리자님께서 학과 홈페이지 서버를 업그레이드 하면서 LAMP를 Wow Linux & Apache 1.3 & Mysql3 & PHP 4에서 Fedora Core 7 & Apache 2.2 & MySQL5 & PHP 5로 버전 업을 시키는 것을 보면서 나도 따라갈려고 하다가 MySQL때문에 머리 아파 미치는 줄 알았다. (DB가 꼬여서 복구시키는데 3일 걸렸다.)
(나는 명색이 컴퓨터공학과 홈페이지 관리자-_-;; 컴퓨터공학과 서버관리자는 아님)


현재는 UTF-8와 EUC-KR이라는 문자코드때문에 골머리를 앓고 있는 과도기 상태입니다.
P.C.R.C.서버도 대세를 따라 UTF-8로 변경을 할까 골머리를 앓고 있군요.
Buy me a coffeeBuy me a coffee
이번에 서버를 다시 구축하게 되었는데 MySQL를 다시 깔게 되었다.
MySQL를 다시 깔려는데 실수로 설치중에 원하지 않는 MySQL5가 깔리게 되었다. 원래는 MySQL 4.1로 깔려고 만반의 준비를 했더니 원.
MySQL 5를 지우고 MySQL4.1로 깔았더니 Version이 안맞다고 짜증을 내기 시작.
그래서 다시 MySQL 5를 설치하였다. 결과는
한글 파일이 다 깨진다 ㅠㅠ "ㄴㅇ라먼오렂ㅂ더기ㅏㅂ저ㅣㅏㅁㄴ어리ㅏㅁㅇㄴ럼이낢ㄴㅇ"같은 식
억지로 UTF-8를 euckr로 고쳐도 깨진다. ㅠㅠ


그래서 전체 백업을 받기로 시작하였다. MySQL5에서는 UTF-8을 쓰니가 명시를 안하면 UTF-8로 저장되더군요 ㅠㅠ
# mysqldump -u root -p --all-databases > backup.sql


그래서 EUC-KR라고 문자셋을 명시하고 백업을 받기로 하였습니다.
# mysqldump -u root -p --all-databases --default-character-set=euckr > backup.sql


그런데 EUC-KR로도 백업을 받아도 문자들이 다 깨졌습니다 -_-;++
그래서 구글링한 결과
mysql의 인코딩 설정이 서버마다 다르기 때문에 dump 할때 한글이 깨지는 문제가 생긴다고 하더군요.
dump 했을때 한글이 깨지는 경우
# mysqldump -u root -p --all-databases --default-character-set=latin1 > backup.sql

이렇게 해서야 겨우 dump 백업을 가까스로 마쳤습니다. 이거때문에 하루는 버렸습니다.ㅠㅠ

참고자료 : dump할때 한글 깨짐 방지

'컴퓨터 > DB' 카테고리의 다른 글

DB 문자셋을 통일 시켜버릴까?  (1) 2007.08.06
꼬인 DB를 복구 완료 및 셋팅중.  (2) 2007.08.05
학과 서버 DB 정리  (4) 2007.07.27
Windows에서 Oracle 설치중  (5) 2007.07.13
PHP와 Oracle 연동하기  (1) 2006.02.07
Buy me a coffeeBuy me a coffee
학과 서버 DB 정리를 단행했습니다.
이번에 학과 서버 DB에 엄청난 스팸글들이 남겨졌다는 것을 보고 경악을 했습니다.
그래서 PHP로 예전에 스팸처리한 소스를 이용하여 스팸글 방지 금칙어를 설정하고, SQL 쿼리문 수행하여 일일히 스팸글들을 지웠습니다.
이렇게 깨끗해지니까 -_-;; DB에 내용 별로 없구나 OTL

지금까지 DB정리하다 힘들었습니다. ㅠㅠ 스팸글올리는 사람 왜이리 많3?ㅠㅠ



세상에서 스팸글 올리는 사람들이 싫습니다.

여기서는 스팸처리를 암호 넣는 공간에 암호를 특정 단어로 넣을때에 DB 쿼리 수신 방지, 금칙어목록을 만들어서 제목이나 이름, 내용에 특정 이상야릇한 YA한 단어 나오면 DB 쿼리 수신 방지를 했습니다.

아 세상에서 스팸글 올리는 사람 너무 싫어요 ㅠㅠ
DB청소 및 정리 하느라 날밤깠습니다.ㅠㅠ

'컴퓨터 > DB' 카테고리의 다른 글

DB 문자셋을 통일 시켜버릴까?  (1) 2007.08.06
꼬인 DB를 복구 완료 및 셋팅중.  (2) 2007.08.05
MySQLdump할때 한글 깨짐 방지  (1) 2007.08.04
Windows에서 Oracle 설치중  (5) 2007.07.13
PHP와 Oracle 연동하기  (1) 2006.02.07
Buy me a coffeeBuy me a coffee
Oracle 9i까는데 왜이리 무거운지 -_-;;
오후 11시경에 CD굽고 깔기 시작했는데 현재 오전 2:19 아직도 깔고있는 중이다 -_-;;
아 언제 다 깔릴까?


이번에 야매로 배운 MySQL대신 Oracle로 DB를 제대로 공부하고 싶은데 까는것 부터가 난간이다 ㅡㅡ;

'컴퓨터 > DB' 카테고리의 다른 글

DB 문자셋을 통일 시켜버릴까?  (1) 2007.08.06
꼬인 DB를 복구 완료 및 셋팅중.  (2) 2007.08.05
MySQLdump할때 한글 깨짐 방지  (1) 2007.08.04
학과 서버 DB 정리  (4) 2007.07.27
PHP와 Oracle 연동하기  (1) 2006.02.07
Buy me a coffeeBuy me a coffee
히치하이커를 위한 PHP가이드

싸고 구하기 쉬운 MySQL DB +PHP연동뿐 만 아니라 기업에서 많이 쓰는 Oracle DB + PHP연동을 어떻게 해야하는지 알아야 할 듯 하여 링크시켰다.

98학번 선배님이 Oracle DB공부좀 하자고 해서 Oracle DB를 내 컴퓨터에 설치하고 이용해 볼 예정이다. Oracle설치를 해봐야겠다.


근데 Oracle설치 잘못하면 컴퓨터에 OS를 다시 깔아야 한다는 것이 좀 걱정스럽기 하다.

'컴퓨터 > DB' 카테고리의 다른 글

DB 문자셋을 통일 시켜버릴까?  (1) 2007.08.06
꼬인 DB를 복구 완료 및 셋팅중.  (2) 2007.08.05
MySQLdump할때 한글 깨짐 방지  (1) 2007.08.04
학과 서버 DB 정리  (4) 2007.07.27
Windows에서 Oracle 설치중  (5) 2007.07.13
Buy me a coffeeBuy me a coffee

+ Recent posts