shattered-blog.com

投稿記事数[玖阡陌(9100)]以上!PC,ゲーム,カメラ,動画などを、アヤしゐ「專門妖語」を使ッて解説スル!

#1046 - No Database Selected(phpMyAdminでのインポート)

投稿日:

データベース(DB)のバックアップは重要、ということで、mysqldumpにより、定時バックアップをしていることも多いだろう。

バックアップの設定は、Debianの場合

/var/spool/cron/crontabs

にある

root

というファイル。

正し、インストール直後のcrontabsには何もないので作ること。

例えば、test_001というデータベースがあり、これを毎日23時にバックアップする場合、

00 23 * * * /usr/bin/mysqldump -uユーザ名 -pパスワード test_001 | gzip > /home/ユーザ名/backup/test_001_db_`date +\%Y-\%m-\%d-\%H\%M`.sql.gz

とし、Debianを再起動。

すると、毎日23時に、

/home/ユーザ名/backup/

に、

test_001_db_20XX-XX-XX-2300.sql.gz

というファイル名で保存される。

データベースの容量が大きい場合を想定し、.gzに圧縮して保存する。

毎日バックアップされるので、積み重なると無視できない。

データベース(sql)ファイルはテキストファイルなので、圧縮することによる容量減の効果が非常に大きい。

例:圧縮前:11MB→圧縮後:2.2MB

.gzファイルの解凍は、WindowsではLhaplus等で可能。

これで得られたsqlファイルからデータベースを復元する場合、
先に同名のTableを作成しておき、その上でインポートしなければならない。

そうでないと、

#1046 - No Database Selected

と表示され、インポートできない。

同名のTableがない場合は、インポートにより自動で作成はしてくれない。

バックアップしても復元できないと意味がないので、正式運用前に、バックアップだけでなく復元も含め、動作確認をしておくこと。

なお、phpMyAdminからインポートする場合、容量が大きすぎてインポートできない場合は、

phpMyAdminでのインポートファイルの最長を変更(Debian)

を参照し、上限値を上げておくこと。

なお、バックアップしたファイルをLinuxのシステムと同じドライブに入れておくと、ドライブが逝った場合に面倒なので、そのドライブ「外」にも保存するようにすべきだろう。

関連:mysqldump ― データベースバックアッププログラム

コンピュータに於ける「dump(ダンプ)」は「ファイルやメモリの内容を記録、あるいは表示する」という意味であるが、今回の「dump」は「バックアップ」という意味で捉えて問題ない。



プレイステーション クラシック
ソニー・インタラクティブエンタテインメント
2018年12月発売 20タイトル収録
メガドライブミニ
セガゲームス
2019年9月発売 42タイトル収録
メガドライブミニW
セガゲームス
2019年9月発売 42タイトル収録
PCエンジン mini
コナミデジタルエンタテインメント
2020年3月発売 58タイトル収録

-Linux, データベース

Copyright© shattered-blog.com , 2023 All Rights Reserved.