2014-03-01から1ヶ月間の記事一覧

mcrypt関数で暗号化した時のパディングの問題

mcrypt関数でデータを暗号化→復号化した時に、末尾にデータが付加されて元に戻らない場合がある、という事で簡単に実験。 サンプルのテキストファイルを作成する。 $ echo -n 'encrypt-me' > before.txt 中身を確認 $ cat before.txt encrypt-me サンプルの…

SQLiteの自動インクリメント

<環境> CentOS 6.5/64bit sqlite 3.6.20 SQLiteで自動インクリメントするには、integerにPRIMARY KEYを指定すれば良い。 $ sqlite3 test.db SQLite version 3.6.20 Enter ".help" for instructions Enter SQL statements terminated with a ";" sqlite> CR…

連想配列にデフォルト値を適用しつつパラメータを上書き設定する方法

PHP

classのデフォルト値を設定する時などに便利なこと。 説明のためのソース $params = array('host'=>'192.168.1.1', 'dummy'=>'hoge'); $default = array('host'=>'localhost', 'port'=>80); $params = array_intersect_key($params, $default) + $default; p…

SQLiteのコマンドラインでSELECTした結果を見やすくする

SQLiteのコマンドラインでSELECTを発行した結果表示が見にくいので、見やすくしてみる。 環境; CentOS 6.5 SQLite 3.6.20 まずはテストDBを作成。 $ sqlite3 test.db SQLite version 3.6.20 Enter ".help" for instructions Enter SQL statements terminate…

PostgreSQLのVACUUM/REINDEXでDBのサイズが減るか実験

PostgreSQLで定常的に必要なメンテナンスと言えば、「VACUUM(FULL)」が挙げられる。運用上は「REINDEX」も大事なので、REINDEXによりDBのサイズが変化するのを試してみた。それぞれの動作はドキュメントを参照(バージョンは実験環境に合わせてあるため8.4…

RhodeCodeでsjisのファイルが文字化けする

sjisで保存されたファイルが文字化けして困るので対応。インストール先に production.ini にて、以下のように変更してサービスを再起動。 ## default encoding used to convert from and to unicode ## can be also a comma seperated list of encoding in c…

テーブル名やカラム名にSQLの予約語を使う方法

SQLの可読性が下がる上にバグになりやすいけど、こんな事もできるという程度のメモ。 PostgreSQLの場合、テーブル名やカラム名で予約語を使うには、ダブルクォートで囲う。 文字列にダブルクォートが入っている場合は、重ねてエスケープする。 psql=> CREATE…

yum と apt の対応表

たまに混在させて間違ってしまうのでメモ。yum と apt コマンドの対応表 動作 Redhat系 Debian系 キャッシュの更新 apt-get update ダウンロードしたパッケージを削除 yum clean packages apt-get clean アップデート可能な一覧を表示 yum check-update モジ…

SQLのIN句で複数の条件を指定する

SQLのIN句で複数の条件を指定する方法のメモ。PostgreSQL 8.4 で確認。適当なテーブルを作成 $ createdb in_test_db $ psql in_test_db in_test_db=> CREATE TABLE sample(id serial primary key, name text default '', age integer default 0); NOTICE: CR…

psqlの結果表示がずれる場合の対処

環境CentOS 6.5 PostgreSQL 8.4(yum版) psqlの実行結果の表示がずれて見難い。 test_db=> SELECT user_id, name, cnt FROM test_tbl; user_id | name | cnt ---------+--------------------+----- 145 | 伊達 正宗 | 2 253 | 織田 信長 | 2 389 | 武田 信…

Mailmanのシーケンスを変更する方法

MailmanでSubjectに付加されるシーケンスを修正する方法。 Mailmanのインストール先は、「/usr/local/mailman」とする。 MLの一覧を表示 # /usr/local/mailman/bin/list_lists MLのコマンドへ入る /usr/local/mailman/bin/withlist [ML名] ロックする >>> m.…

PHPのバージョンとallow_call_time_pass_referenceの関係

PHP

php5.2で動作していたソースをphp5.3で動作させると、以下のような警告が出る。 Deprecated: Call-time pass-by-reference has been deprecated in ***.php これは、関数のコール時に引数が参照で渡された場合に警告するかどうか(allow_call_time_pass_refe…