データベースの圧縮
SQLiteでは削除されたデータ領域の開放を行わないそうです
そのため、コメントスパムやトラックバックスパムを削除し続けると、無駄にDBが肥大することに…
これをパージするために、vaccum というコマンドを使います
[seraphis@hoge sqlite]$ sqlite データベースファイル名
sqlite: error while loading shared libraries: libsqlite3.so.0: cannot open shared object file: No such file or directory
ん?
[seraphis@hoge sqlite]$ whereis libsqlite3.so.0
libsqlite3.so: /usr/lib/libsqlite3.so.0 /usr/local/lib/libsqlite3.so.0 /usr/local/lib/libsqlite3.so
ファイルあるじゃん
ぐぐってみたら、
これはパスが不正でDSOモジュールとしてSQLiteが読み込めてないと言う事ですので、「libsqlite3.so.0(本体 libsqlite3.so.0.8.6)」のシンボリックリンクを「/usr/lib」に置いてあげます.
とのこと
rootになって
[root@hoge sqlite]# ln -s /usr/local/lib/libsqlite3.so.0.8.6 /usr/lib/libsqlite3.so.0
ユーザに戻って
[seraphis@hoge sqlite]$ ls -al
total 15796
drwxrwxrwx 2 root site3 4096 Sep 21 13:50 .
drwxrws--x 13 seraphis site3 4096 Sep 21 13:42 ..
-rw-r--r-- 1 seraphis users 16143360 Sep 21 13:50 データベースファイル名
[seraphis@hoge sqlite]$ sqlite データベースファイル名
SQLite version 3.5.0
Enter ".help" for instructions
sqlite> vacuum;
sqlite> .quit
[seraphis@hoge sqlite]$ ls -al
total 10152
drwxrwxrwx 2 root site3 4096 Sep 21 13:53 .
drwxrws--x 13 seraphis site3 4096 Sep 21 13:53 ..
-rw-r--r-- 1 seraphis users 10368000 Sep 21 13:53 データベースファイル名
16MB→10MBになりました
これで再構築も5分くらい短縮されるかな?
トラックバック(0)
このブログ記事を参照しているブログ一覧: データベースの圧縮
このブログ記事に対するトラックバックURL: http://www.takosuke.net/~seraphis/mt/mt-t_SlwssdF5.cgi/516


コメントする