Postgres
select * from pg_stat_activityで、現在postgresqlサーバーに繋いでるプロセス一覧と、そのプロセスが現在発行中のSQLを見ることが出来る ログが見れない状況、DB再起動も出来ない状況で助かる
途中でnot nullを外すことが出来ない 新たなテーブルを作り直してデータ移行しなければならない 7.3からはalter column not nullが使える
テスト環境なんかで使う 一応ロールバックするが安易に使えない
postgresql.confにも書いてあるけど shared_buffersは、max_connections * 2でなければならない
DB設計してからツールでER図を作って出来た資料は総じて分かりにくい
インデックスは偉大だった
explainは基本
テーブル1 column1 column2 column3 column4 column5 テーブル2 columnA columnB columnC columnD columnE SELECT * FROM テーブル1 as 1 INNER JOIN テーブル2 as 2 ON 1.column3 = 2.columnA AND 1.column4 = 2.columnB AND 1.column5 = …
改行なし1000文字以上のログ出力されたSQL文も これさえあれば一瞬で見やすくなる かなり時間節約に繋がりますWeb上で見やすいSQLに整形する「SQL整形ツール DML Breaker」
固定長の型に任意の長さの文字列を入れることは出来ない
aggregates → 集合
mysqlは良いSQLに対してパフォーマンスが高いが 悪いSQLに対してはパフォーマンスが悪い postgresは悪いSQLに対してもなめらかに対応する sql serverは論外らしい
トランザクション処理 概念と技法 上 下 神の著書を読まなくてはならない
sql1とsql2の結果のカラムは互換性が無ければならない
気を抜くとメモリが足りなくなってくるので メモリ節約術が身につく日々 ローカルテスト環境のpostgresは 必要な時に必要な分だけ動いてくれれば良いので ダンプ、リストアする時なんかはメモリ多めで起動 普通に使う時はメモリ少なめで起動する 起動時のパ…
real型というのを初めて触った
500Mのダンプファイルのリストアで windows postgres(8.3)が悲鳴を上げていたのでチューニングした postgres.confのshared_buffersを128MBに work_memのコメントアウトを外して2MBにしてみた shared_buffers = 128MB work_mem = 2MB 軽快になった 参考 wor…
pgAdminのquery画面からでも打てる
postgresが8.3で、pgAdminが1.6だとDB開く度にこのエラーが出る pgAdminのバージョンを上げるとエラーが出なくなった
その昔、古い漢字なんかは標準のEUC-JPで扱ってなかったけど マイクロソフトが古い漢字を扱える独自仕様のEUC-JPの文字コード表を勝手に作ってしまった なので、標準EUC-JPとマイクロソフト仕様のEUC-JPの間でエラーが起きてしまっている SHIFT-JISなんかも…
大量のデータをdeleteしてvacuumするなら 新たにテーブルを作成して、移行してリネームする方が早い
インデックス基準で再整理する
create indexでインデックスを30件作った場合、管理するデータの量は30倍になる 爆速で検索や並び替えを行う事が可能になるが、 insert,deleteされるデータも30倍になるのでinsert,deleteに時間がかかる
This probably means the backend terminated abnormally before or while processing the request. おそらくリクエスト処理中か処理前に、異常終了したことを意味します
よく見たら何か文字が混入していたりする
postgres7.2でpg_resetxlogを唱えたらpgdataの中身が無くなっていた・・・ メガンテを唱える勢いで使わないと氏ぬ
※pg_resetxlogを使うとpgdataが吹っ飛ぶを先に読む事 /home/postgres% pg_ctl start DEBUG: open of /data/pgdata/pg_xlog/000000040000009D (log file 4, segment 157) failed: No such file or directory DEBUG: invalid primary checkpoint record DEBUG:…
patient table PID NAME select pid from patient Attribute not found pid select PID from patient Attribute not found PID select "PID" from patient 1 2 3 大文字小文字関係ないと思っていたけど 関係あった
PostgreSQLバージョン6.5に付属するlibpqの日本語Windows版バイナリです。今となっては少々バージョンが古いのですが、 PostgreSQLサーバはクライアントに対して上位互換性がありますので通常の使用では問題ありません。バージョン6.5以降の全てのサーバに接…
postgresql.conf pg_hba.conf の設定だけでは繋がらない、 ファイヤーウォールのポートを空ける必要がある※追記 postgres.confのlisten_addressesの変更を忘れている場合もある listen_addresses = '*' # what IP interface(s) to listen on;