2012/05/30

クエリーキャッシュ関係を調べる

◎クエリーキャッシュが有効になっているか確認する

SHOW VARIABLES LIKE 'have_query_cache';
+------------------+-------+
| Variable_name    | Value |
+------------------+-------+
| have_query_cache | YES   |
+------------------+-------+
1 row in set (0.00 sec)

◎キャッシュのサイズを確認する

show variables like 'query_cache_size';
+------------------+-------+
| Variable_name    | Value |
+------------------+-------+
| query_cache_size | 0     |
+------------------+-------+

「have_query_cache」が「YES」になってても、この↑キャッシュサイズが0だったら キャッシュはされない。

◎キャッシュサイズを設定する

SET GLOBAL query_cache_size = 41984;

my.cnfで設定

query_cache_size = 32M

設定後にMySQL再起動 : service mysqld restart

◎クエリーキャッシュされたかを確認する

SHOW STATUS LIKE 'Qcache%';
+-------------------------+-------+
| Variable_name           | Value |
+-------------------------+-------+
| Qcache_free_blocks      | 0     |
| Qcache_free_memory      | 0     |
| Qcache_hits             | 0     |
| Qcache_inserts          | 0     |
| Qcache_lowmem_prunes    | 0     |
| Qcache_not_cached       | 0     |
| Qcache_queries_in_cache | 0     |
| Qcache_total_blocks     | 0     |
+-------------------------+-------+
8 rows in set (0.00 sec)

キャッシュされると「Qcache_hits」とか「Qcache_queries_in_cache」とかの値が増える

2012/05/27

CakePHP での ログ設定 (CakePHP 1.3.6)


◎config/core.php↓
//PHP エラーレベルで指定
Configure::write('log', E_ERROR | E_WARNING | E_PARSE);
[Mode]
debug=0 の時
Fatal → Apacheエラーに出る
WARNIG → appエラーに出る

debug=1 の時 ↑上記のエラーに加えて、
Notice → appデバッグログに出る


◎ログファイル指定
[apache] vhostで設定 /etc/httpd/conf.d/vhosts/[user].conf
CustomLog /var/log/httpd/app_name_access_log common
ErrorLog /var/log/httpd/app_name_error_log ←PHPエラーとかが出る。

[app] アプリ(CakeのLogクラス)で出すログ
   →config/設定ファイル.phpで指定する
// ログPATH設定
CakeLog::config('custom_path', array(
'engine' => 'FileLog',
'path' => '/var/log/httpd/[app_name]_'
));
【出力先】
  → 「debug.log」、「error.log」は Cakeがエラーレベルに応じて出しわけます
  → Controller内とかでLogクラス使って出したものが出ます
 LOG_DEBUG:/var/log/httpd/[app_name]_debug.log
 LOG_ERROR:/var/log/httpd/[app_name]_error.log


【エラー出すときに使う↓メモ】
#var_dump(srlen(array())); //Fatal Error
var_dump(srlen('',)); //Pars Errore
var_dump(strlen(array())); //WARNIG
#var_dump($a); //Notice

 



文字列フィールドの 平均バイト数を出す

select avg(b.length) from (SELECT length(comment) as length from blogs where del_flg=0) as b;

$.each() でスキップする


phpだと continue;
jQuery.each()の場合は return true;



Carbon Emacs


◎Carbon Emacs (おまけ)
Ctl+X+F で file find モード
※Ctl押しながら 「X」 続けて「F」と押す
※ユーザのhomeディレクトリ配下を見てる

Carbon Emacsパッケージは、銭谷誠司氏が開発を続けているMac OS X向けのEmacsパッケージである。有用なスクリプト等がデフォルトで含まれているほか、日本語環境向けのパッチなども導入されており、日本語環境で利用するならもっともおすすめできるEmacsパッケージである。
参考)Emacs超入門[1]:Emacsの基本的な使い方とショートカットキー - SourceForge.JP Magazine : オープンソースの話題満載 -http://sourceforge.jp/magazine/09/04/06/1138226/2