mysql 大きいサイズのsqlを分割してインポートする

大きいsqlをインポートするのら、php.iniで最大サイズを変更すればできるといえばできる。ローカル環境とかなら。でもインポート中にエラーとかでると結局sql直したりしなきゃいけない。今回は100テーブルあって全部で30MBくらいのsqlなので、テーブル毎に分割してインポートする。

db00〜db99までのファイルができた。db00は最初の方のファイルの説明みたいな文章が入ってるだけなので、実際使うのはdb01〜db99までの99ファイル。99回インポートを手動するのはめんどくさい。。シェルスクリプトを作ってみる。

これでできた。

cakePHPのソースをローカル上で納品ファイルにする為のシェルスクリプト

GitHubとCapistranoつかって普段はデプロイしているのですが、ローカル上で納品ファイルをつくってscpで本番サーバにアップするような場合は、ローカル上に最新のファイルをPULLしてからcakePHPのデータベース設定の内容とか、デザイナさんがベタ打ちしているスタイルシートのリンクなどを修正する必要があります。

hoge_proディレクトリに納品ファイル一式を作成する場合、
・hogeディレクトリの中身をgithubからpullして最新版にする
・hoge_proディレクトリにhogeディレクトリの中身をコピーする
・hoge_proディレクトリの、app/Config/database.phpを本番環境用に差し替える
・hoge_proディレクトリのapp/tmp内の不要ファイルを削除する
・hoge_proディレクトリのapp/View内のctpのベタ打URLを修正する
そして、SCPで本番サーバにアップします。

これをMacでシェルスクリプトにします。
hoge_proディレクトリ直下にこのシェルスクリプトを置きます。差し替えるdatabase.phpもhoge_pro直下に置いておきます。