태그 보관물: MySQL

MySQL에서 최근 데이터 조회하기

디비 조회 시에 최근 한 달, 또는 최근 2주 동안의 데이터가 필요할 때 CURRENT_DATEINTERVAL을 사용하면 편하네요.

SELECT * FROM `table` WHERE `date` > CURRENT_DATE - INTERVAL '1' MONTH;
SELECT * FROM `table` WHERE `date` > CURRENT_DATE - INTERVAL '2' WEEK;
SELECT * FROM `table` WHERE `date` > CURRENT_DATE - INTERVAL '10' DAY;

기간도 월, 주, 또는 일 단위 등으로 지정할 수 있습니다.

APMSetup, MySql 에서 한글이 깨질 때

APMSetup을 사용해서 로컬에 테스트 서버를 만들던 중, PHP 페이지에서 한글을 입력하면 DB에 깨져서 저장되는 문제가 생겼습니다. 이것저것 찾아보면서 서버 및 DB의 인코딩 설정도 UTF8로 바꿔봤지만 문제가 해결되지 않더군요. 그래서 조금 더 검색해 보던중, 다음의 코드를 찾았습니다.

mysql_query("set session character_set_connection=utf8;");
mysql_query("set session character_set_results=utf8;");
mysql_query("set session character_set_client=utf8;");

이 코드를 추가해 주면 한글도 DB에 문제없이 입력이 됩니다.

SQL에서 워드프레스 사이트URL 설정 변경하기

이번에 공유기를 바꾸면서 사용중인 PC들의 IP가 변경되었는데, 그러다보니 워드프레스를 사용하는 로컬사이트가 오동작하는 문제가 생겼습니다. 원인은 워드프레스 설정에서 사이트 URL을 지정하여 사용하던 IP가 변경되자 제대로 접속할 수 없는 것이었습니다. 이렇게 되면 관리자 페이지 접속조차 불가능해지기 때문에 사이트 URL을 변경할 수 없어, 워드프레스를 이용할 수 없게 됩니다.

그래서 급히 mysql 콘솔을 통해 설정을 변경했는데, 다음에 비슷한 상황이 생길 경우를 대비해 코드를 남겨 봅니다.
우선 현재 설정값을 조회해 보았습니다. 그러면 다음과 같은 결과를 얻을 수 있죠.

mysql> select * from wp_options where `option_name`='siteurl';
+-----------+-------------+----------------------------+----------+
| option_id | option_name | option_value               | autoload |
+-----------+-------------+----------------------------+----------+
|         1 | siteurl     | http://192.168.10.101/blog | yes      |
+-----------+-------------+----------------------------+----------+
1 row in set (0.00 sec)

이제 option_value를 새로운 IP로 변경하고, 제대로 했는지 확인해 보겠습니다.

mysql> update wp_options set `option_value`='http://192.168.0.10/blog' where `option_name`='siteurl';
Query OK, 1 row affected (0.00 sec)
Rows matched: 1  Changed: 1  Warnings: 0

mysql> select * from wp_options where `option_name`='siteurl';
+-----------+-------------+--------------------------+----------+
| option_id | option_name | option_value             | autoload |
+-----------+-------------+--------------------------+----------+
|         1 | siteurl     | http://192.168.0.10/blog | yes      |
+-----------+-------------+--------------------------+----------+
1 row in set (0.00 sec)

사이트가 다시 정상 동작하는 것을 확인할 수 있습니다.