회사의 매니지먼트 시스템을 비즈프리 호스팅(구 파란 호스팅)에서 카페24 호스팅으로 이전했다. 이전 과정의 복잡함이 싫어서 지금까지 버텼지만, 비즈프리 호스팅이 이제 아주 없어진다고 한다. 그 때문에 어쩔 수 없었다.
[1] DB 의 이전
첫 번째 난제는 DB를 옮기는 것이었다. <phpMyAdmin>을 이용하여 테이블 단위로 ‘내보내기’를 진행했다. SQL파일로 내보내는 것은 쉬웠다. 하지만 테이블의 용량이 100MB를 초과할 경우 의 ‘가져오기’를 통해 SQL파일을 가져올 수 없었다.
무려 15년 전에 사용했던 <Navicat>이 생각났다. 14일간 무료 사용이 가능했다. <Navicat>을 이용하여 가져온 SQL파일을 실행하여, 필요한 테이블을 손쉽게 복사할 수 있었다. 좋았다.
- 비즈프리는 <MySQL>을 사용하고, 카페24는 <mariaDB>를 사용한다. <Navicat>에서 단순히 카페24의 DB를 <mariaDB>로 설정해준 것 외에는, DB와 관련하여 어떤 변경도 하지 않았다. 동일한 것인지, 호환이 100%인 것인지 알 수가 없다. 어쨌든 매우 다행이었다.
- 아마 <Navicat>에서 <MySQL>로 설정해도 문제가 없을 것 같다.
[2] PHP 파일의 수정
에디터는 <Atom>을 사용했다. 최고는 아니지만, 수정 작업에 나쁠 것은 없었다.
이번 이전 작업은 DB만 잘 가져오면, 어떤 수정도 없이 시스템이 그대로 동작할 것이라고 생각했다. 하지만 이 생각은 조금 틀렸다.
바로 ‘mysqli’라는 새로운 드라이버의 등장이었다. DB의 연결부가 완전히 변한 것이다. 도대체 얼마나 대단하길래 함수 이름을 바꿀 정도였는지 모르겠다. 이 부분을 수정하는 것이 시간이 좀 걸렸다. DB 관련한 부분은 모두 class화 해놓아서 빠르게 수정할 수 있었지만, 그 밖에도 수정할 부분이 많았다.
대부분의 함수에서 새롭게 DB 커넥션을 파라메터로 요구했다. 예를 들면 ‘mysql_insert_id()’라고 쓰면 됐던 것이, 이제는 ‘mysqli_insert_id($커넥션)’이라고 써야 한다. 이런 부분들에 대해 클래스를 수정해서 다가가야 하는지, 아니면 다른 방법으로 다가가야 하는지 고민하며 진행하게 되었다. 특히 ‘mysqli_real_escape_string’을 적용할 때는 더욱 피곤했던 것 같다.
- ‘mysqli’는 이미 상당히 오래 전에 나온 것으로 확인된다. 나만 새로운 것이다.
최초에 생각했던 것에 비해서는 훨씬 단순한 작업이었다. 가끔의 프로그래밍, 자존감을 지켜준다. 진심으로 즐거웠다. Good!
원본이 삭제될 경우 지원되지 않을 수 있습니다.