がるの健忘録

エンジニアでゲーマーで講師で占い師なおいちゃんのブログです。

DB

phinxを使ってみた(マイグレーション変)

とりあえずinstall composer require robmorgan/phinxinitで初期化をするらしい。 vendor/bin/phinx initphinx.php が生えた。 [ 'migrations' => '%%PHINX_CONFIG_DIR%%/db/migrations', 'seeds' => '%%PHINX_CONFIG_DIR%%/db/seeds' ], 'environments' =>…

ORMについて考えてみる

ORMで初っぱなボケようとして割とよい感じの「別の意味」が見つからなくてもんどり打ってるおいちゃんでございます*1。 まぁボケっぱなしだと話が続かないので、速やかに本題に。Object-relational mapping、でございます。O/RMって書かれたりORMって書かれ…

nullを含むデータのORDER BY

DB

いや普通に考えて「やらねぇしやらねぇだろ」ってお話なのですが……まぁ「諸般の事情」ってやつがございまして。 簡単にテストしてみました。 mysql> select * from test order by i; +------+ | i | +------+ | NULL | | 1 | | 2 | | 3 | | 4 | | 5 | +-----…

database領域の作成とユーザの作成

最近少し、作り方が変わったのか変えたのか。 こんなやり方をしてることが多いです、ってのがあったので備忘録。 create database データベース名; CREATE USER 'ユーザ名'@'サーバ名' IDENTIFIED BY 'パスワード'; GRANT ALL ON データベース名.* TO 'univc…

論理削除とサロゲートキー

いや端的には「どっちも原則的にはいらん」っていう立ち位置なのですが。 その辺も含めて、一旦「現時点での」おいちゃんのスタンスを、メモ程度に。 論理削除 最近見ていると割と「いらん!」な方向に向いている記事が多いのであんまり気にならないっちゃぁ…

静的プリペアドステートメントが「原理的に安全」な理由 後編っていうか本編

後半です。 …「完了編」まで引き伸ばさないように頑張っていきたい所存でございます (`◇´)ゞ 前回のは http://d.hatena.ne.jp/gallu/20111128/p1 をご覧ください。 さて。 まずは「ふつ〜にエスケープされた場合」に、SQL-Injectionが「発生しない」真っ当…

静的プリペアドステートメントが「原理的に安全」な理由

ものっそ大雑把に説明をしていきます。 「わかりやすさ」中心なので、「現在(ここほんの40〜50年くらい)の素晴らしい技術(アルゴリズム考え方アーキテクチャその他)」には大分と背を向けている可能性がありますのでご注意ください B-p 真面目にSQLのパースあ…

Tutorial Dですかぁ

DB

色々と体調とかお仕事とかぐだんぐでんなので、簡単にめもly。 ちとSQL周りの話で(…かな〜り逸れてる気もしますが)盛り上がっているのですが。 ふとめっけたTutorial D…なんか面白そう!! なんていうか…「綺麗な臭いと気配がする」!! 実装依存とかなんと…

そうなの! それなの!

DB

元ネタ [Web 2.0 Expo]「これからのWebを支えるデータベースは“NoSQL”」---米10genのMerriman CEO http://itpro.nikkeibp.co.jp/article/NEWS/20091120/340853/ SQLデータベース以外のデータベース/データストアの必要性が高まると述べた。 データストア …

KVS(Key-Value Store)かぁ…

DB

シンプルかつ単機能であること、拡張性が高い事など。 おいちゃん的に「らう゛りぃ」この上ないKVSですが。 <余談> 根本的に。RDBはもの凄くスケールアウトさせにくいものなので。で…スケールアップが以下略なのは周知の通りなので。 結果、限定的な状況を…

難しい…

ミックさん( id:mickmack | http://www.geocities.jp/mickindex/index.html )とおっしゃるかたが書かれている書籍。 達人に学ぶ SQL徹底指南書 (CodeZine BOOKS)作者: ミック出版社/メーカー: 翔泳社発売日: 2008/02/07メディア: 単行本(ソフトカバー)購入…

お外から接続したい時の設定memo

まぁ最近ありがちですが「自マシン以外からの接続はデフォNG」でございます。 で…いやぁすっかりとPostgreSQLでの設定方法忘れてる orz ってなわけで、memo。 まず。外部マシンからの接続(WebサーバとDBサーバを別マシンでなんてケース)の場合。 postgresql.…

SQLチューニングのためにその一

DB

いやまぁ「そもあんたSQLほとんど使わないやん特に複雑なのは忌み嫌ってるやん」とかいう突っ込みはおいておくとして。 実際問題、SQLの性能改善とかチューニングとかまぁ色々あるわけでして。 で………忘れるんだこれが orz とりあえず。SELECTの手前に「EXPLA…

DBの、特に削除と候補キー周りにまつわる思考実験

おもいっくそ思考実験なので鵜呑み厳禁&考えながら書いてるので多分文体めちゃくちゃw まず。以前に、オラクルマスターとお仕事をしたりしてその流儀をしばらく使ってみたんだけど*1………うん正直トラブルを引き起こしやすかった。 いや別に善し悪しをどうこ…

見解の相違?

DB

OracleメインのDB屋さんとお仕事をしてるのですが。ふと彼が言ったのが「2レコード以上にまたがるプライマリキーなんておかしいですよ」。 …なるほどぉ。データベースシステム概論とか読んでるかぎりだとむしろそのあたりの画面って基本「集合」って思って…

ははぁん大分見えてきた…けどね orz

さすがに見逃せない話が多々あったので、ちと調べてみた。 で…大分見えてきた。ポイントは多分「3つの自動化」。 まずわかりやすいのは「文字コードの自動化」。 彼ら的には、EUCとしての「おはよう」とUTF-8としての「おはよう」を、つまり euc('おはよう'…

モットゼンリョクデ アリエナイ orz

すぺしゃるさんくすゆどうふさん( id:Yudoufu )。 んとねあのねえとね。 ……………MySQL使うのやめようかしらん本気で思ったぞおいら。 相変わらずの材料紹介。 create table test ( id int, a varchar(100), b text, c varchar(100) binary, d text binary ); i…

アリエナイ orz

http://dev.mysql.com/doc/refman/4.1/ja/char.html CHAR 型と VARCHAR 型のカラム値のソートと比較は、テーブルの作成時に BINARY 属性が指定されている場合を除いて、ケース非依存方式で行われます。 ………………………………………え゜? おぞましい予感を前提に、実験…

面白いものを見つけてみたりみなかったり

http://d.hatena.ne.jp/kanchan777/20070131 http://d.hatena.ne.jp/kanchan777/20070201 http://d.hatena.ne.jp/kanchan777/20070202 http://d.hatena.ne.jp/kanchan777/20070206 どう面白いのかは各人の判断に任せようw *1 いくつかあるのだが、最近まだ…

MySQL ラヴかも

ちょいと、MySQL August 2006 セミナー に行ってきたです。………ものごっついい感じです。 最近ちょっと「太った?」と思い微妙な感じがしていたMySQLなのですが…そんなことはなくて。ちゃんとダイエットとか色々と考えまくってるみたいです。 プラガブルなエ…

MySQLのインストール

絶対忘れるのでめもめも。てけとうなuserで… tarしてconfigureしてmake。 rm config.cache make clean./configure \ --prefix=/opt/db/mysql-4.0.26 \ --localstatedir=/opt/db/mysql/data \ --with-charset=ujis \ --with-extra-charsets=all大体こんな感じ…

DBD::mysqlのインストール

PerlのDBD::mysqlのインストール関連のお話です。 基本は http://y-kit.jp/saba/xp/cpan.htm を参照していただくのがぐっどなのですが…ちょいとはまったところなどを軽くメモ。 そうそう。私は /opt/db/mysql-バージョン番号 にインストールしてますんであし…