メールサーバの移行

イメージ
 自前のメールサーバを停止 これまで、自ドメインのメールサーバはVPS上に構築していた。 ・Ubuntu Server ・Postfix ・Dovecot ・spamAssassinと、BlackListの利用 Spam対策を行ってきたし、サーバ上でメールをトリガーにして各種プログラムを動かしたりしてきた。 メールサーバのメンテナンスは結構面倒くさくて、  ・Disk容量のチェック  ・不正アクセスのチェック  ・各種セキュリティパッチの適用 など、手間がかかる。 そこで、外部のサーバを利用することに…。 結構安くて使い勝手の良さそうなのが、「さくらのメールボックス」 3年契約で、3070円とな…。  メールアドレスは自分のだけなので、20GBまで利用可能!  (Gmailより大きいねぇ) ということで、早速契約。 アカウント設定を行って、既存のDNSを書き換える。WHOISも書き換えて完了。 SMTPとIMAPが利用できればOK。 ちょうど、GoogleがSPF設定していないと受信しないし、DKIMおよびDMARCに対応していないメールを弾くようになったので、対応しているのを確認。 さくらサーバ自体は、これまでお客さんのサーバとして何件も利用しているので、利用方法も難しくはない。  Webメールにも対応しているので、いざという場合にもありがたい。 ということで、各メールソフトの設定を変更。  PC(常時使用する3台)とタブレット、スマートフォンと台数は多いがそれ程手間はかからない。 問題は、旧サーバで送受信したメールの履歴だけれど、これはThunderbrdを使ってローカルに保存することで回避。  本当は、サーバtoサーバでMailboxに残そうとも考えたんだけど、古いメールはそれ程必要ないし、ローカルにバックアップしてあれば凌げるので、良しとする。 移行時にDNSの反映で若干時間がかかったものの、問題なく送受信できるのを確認して、作業完了。  これでメンテナンスの手間が減るので、安いもんです。

phpMyAdminの設定

コンソールもいいけれど…

もちろん、ネットワーク越しに使うので、コンソールでmysqlコマンドや、mysqldumpなどは普通に使っていますが…。

ちょこっとデータを修正したり、複数のテーブルを見比べたりするのに、CUIでは不便なこともあるので、phpMyAdminを入れることが多い。

もちろん、今時はパッケージマネージャが装備されているので、インストールは簡単。
ubuntuなら apt-get install phpmyadmin でサクッと入るし、CentOSなら yum で同様にインストールは完了する。

ところが、このインストールだけでは、phpmyadminの設定情報を記録してくれない。

最近、使用頻度も上がっているのに、他の作業しているとタイムアウトを起こして、再度ログイン画面に戻ってしまう。これは面倒。
そこで、有効期間を1440秒から→14400秒に変えておいたりする。

『環境設定は、現在のセッションでのみ有効です。この設定を永続的に有効にするには、phpMyAdmin 環境保管領域が必要です。』とエラーが表示され、セッションが切れると元に戻ってしまう。
 そこに書かれているリンクを踏んでも、あまり親切には書かれていないのだ…。

まずはtableを用意

一応、ドキュメント見ながら作業をする。
「create_tables.sql」を使えってことなので、探してみる。

# find / -name create_table.sql

/usr/share/doc/phpMyAdmin-x.x.x.x/examples/create_tables.sql
に有った。(ちなみにCentOSの場合の結果)

なので、こいつを食わせればOK。XAMPとかならディレクトリさえ分かれば、phpMyAdminからインポートもできるだろうけど、リモートではそんな訳には行かない。

なので、mysqlコマンドから実行。
$ mysql -u root -p
> source /usr/share/doc/phpMyAdmin-x.x.x.x/examples/create_tables.sql

これでOKかというと、まだ不足で、/etc/phpMyAdmin/config.inc.phpを書き換えろという。

#vi /etc/phpMyAdmin/config.inc.php
$cfg['Servers'][$i]['pmadb']         = 'phpmyadmin';          // Database used for Relation, Bookmark and PDF Features
                                                    // (see scripts/create_tables.sql)
                                                    //   - leave blank for no support
                                                    //     DEFAULT: 'phpmyadmin'
$cfg['Servers'][$i]['bookmarktable'] = 'pma_bookmark';          // Bookmark table
                                                    //   - leave blank for no bookmark support
                                                    //     DEFAULT: 'pma_bookmark'
$cfg['Servers'][$i]['relation']      = 'pma_relation';          // table to describe the relation between links (see doc)
                                                    //   - leave blank for no relation-links support
                                                    //     DEFAULT: 'pma_relation'
$cfg['Servers'][$i]['table_info']    = 'pma_table_info';          // table to describe the display fields
                                                    //   - leave blank for no display fields support
                                                    //     DEFAULT: 'pma_table_info'
$cfg['Servers'][$i]['table_coords']  = 'pma_table_coords';          // table to describe the tables position for the PDF schema
                                                    //   - leave blank for no PDF schema support
                                                    //     DEFAULT: 'pma_table_coords'
$cfg['Servers'][$i]['pdf_pages']     = 'pma_pdf_pages';          // table to describe pages of relationpdf
                                                    //   - leave blank if you don't want to use this
                                                    //     DEFAULT: 'pma_pdf_pages'
$cfg['Servers'][$i]['column_info']   = 'pma_column_info';          // table to store column information
                                                    //   - leave blank for no column comments/mime types
                                                    //     DEFAULT: 'pma_column_info'
$cfg['Servers'][$i]['history']       = 'pma_history';          // table to store SQL history
                                                    //   - leave blank for no SQL query history
                                                    //     DEFAULT: 'pma_history'

すると、丁寧にコメントに書かれているので、右のコメント見ながら上記の項目のパラメータを設定する。
書き換えたら、読み込ませないといけないので、phpMyAdminをログアウトして、再度入り直す。

これで、phpmyadminの設定をmysql上に記録してくれる。

ところが・・・

14400秒(4時間ですね。初期値が1440秒:24分)に設定してみたところ、phpMyAdminの設定より、phpの設定の方が短いから、設定値よりも早く切れますと言ってくる。(今度は画面下に…)
session.gc_maxlifetime の値が小さいというので、該当箇所を書き換える。

# vi /etc/php.ini
上記のパラメータを検索すれば、当然1箇所しか無いので楽勝です。
初期値は、7200秒になっていましたので、14400に書き換えてOK。

あとは、php.iniの変更を読み込ませて完了。
# service httpd reload

念のためphpMyAdminで設定しても、今度は何も文句を言ってこないです。
これで、途中で割り込まれて他の作業をしていても、ログインしなおしということにはならないはずです。
こういった事ができないと、不便が続くだけで、面倒ですわね。

忘れるといけないので、メモしておきます。

こういった作業って、サーバ管理できない人は、やっぱり我慢するんだろうか…。

コメント

このブログの人気の投稿

WPS Officeで日本語入力ができない

VirtualBoxでUSBから起動

Virtualboxとnvidiaドライバ