binboserver.comでmysqlを導入
最初に  先だって月三百円と言う格安の値段でレンタルできるロリポップにサーバーを借りたのは数ヶ月前の事だが、ここで一つ問題があった。ロリポップは安くて便利なのだが、独自ドメインを使う事が出来ないのだ。これは困ったサブドメインだけでサイトを公開するのは一抹あまり格好良いと思わなかったからだ。(2003/11/13現在ロリポップは独自ドメインサービスを実施、ちょっと時期がずれてしまいました)

 かくしてサイトを探した。mysqlとPHPが使えて安い所。探しに探し回ったあげくbinboserver.comを発見した。初期費用19ドルでドメイン取得は10ドル、月額も10ドルと言う格安料金である。これは安い……と言う事で早速契約した。料金支払いはクレジットカードのみ、これは面倒だが仕方ないだろう。

 支払い確定後は即アカウントが使えるのはありがたい。速度的には夜のテレホタイムには遅くなるがまずまずの調子であった。
 
インストール済みソフトウエア  インストール済みソフトウエアの欄にちょこっと書かれたApache(2.0.44)Perl(v5.8.0)glibc(5.4.17)PHP(4.3.0RC3)MySQL(Ver 9.38 Distrib 3.22.32)Tcl(7.5)gcc(2.7.2)の文字。本当に使えるのだろうか? という疑問が生じるのが普通レンタルサーバー屋にあるログイン画面が無い事である。

 又気になったのはFAQのページにもmysqlの文字が無い事である。本当に使えるのか……と思ったが確かにアカウントは作られており、あちこちから情報収集すれば(マニュアルにも書かれていないので、サポート掲示板などで情報を検索する必要がある)問題なくmysqlは使えるようである。

mysql  掲示板からの情報によると

 データベースのホスト名は 「localhost」
 データベースの名前は 「FTPでご利用のID」
 データペースのパスワードは「FTPの初期パスワード」
 データベース名は アカウント名 (bs@@@@)

 であると言う。確かにこれでサクットアクセス出来る。これでとりあえずの使い方が分かった。ありがたい。

しかしサポートとしては

データベースのご利用方法に関しては、専門書などをご覧ください。

 と書かれているだけで、それ以上の情報もサポートも無かった。
 うーむ。ここから先は本当に自分一人で頑張らなくてはならない。

テーブルの作成  ロリポップの場合はphpAdminと言うGUIベースのソフトが付いており、マウスでクリックするだけでテーブル設定を行う事が出来たが、今回はちょっと違う。自分でスクリプトを書き、テーブル設定を行わなくてはならない。とは言え作るのは通常一回なのでそう手間のかかる物を作成する必要性は無いだろう。
 考えてみればPostgreSQLの時もこのようなスクリプトを作った。色々と思い出しながら簡単なテーブル作成用スクリプトを作ってみた。言語は毎度おなじみPHPである。
テーブル作成用スクリプト(参考) <?php
//-----------------------------------------------------------------------
//最低限の認証

//認証されなかったら終了させます
if (!isset($PHP_AUTH_USER)){
header('WWW-Authenticate: Basic realm="System"');
header('HTTP/1.0 401 Unauthorised');
print "Authorization Required.";
exit;
}
//IDとパスワードはお好きなものを入れてください。
//毎回変えたほうが良いです。うっかりすると誰かにテーブル破壊されますから
else{
if ($PHP_AUTH_USER !="ID" and $PHP_AUTH_PW !="パスワード"){
exit;
}
//接続
$server="localhost";
$user="bs****";
$password="****";
$connect = mysql_connect($server,$user,$password);
$database="bs****";
mysql_select_db($database,$connect);
//まずテーブルを削除します(初回は削除出来ませんが、初期化の為組みこんでおきます)
$sql=' drop table `test` ';
$result = mysql_query($sql);
//テーブル作成
$sql = 'CREATE TABLE `test` ( `code` BIGINT NOT NULL ,'
.. ' `ipcode` VARCHAR( 20 ) NOT NULL ,'
. ' PRIMARY KEY ( `code` ) ) COMMENT = \'\'';
$result = mysql_query($sql);

 テーブルの内容はそれぞれ変更させて下さい。
 又テーブルを作成し終えた後は必ずスクリプトをサーバー上から削除しておく事をお勧めします。うっかり動かしてしまうと大変な事になりますから。
 かくしてテーブルは出来た、筈であるが確認する術は無い。事も無い。多分大丈夫だと思うが、カンマの掛け違いなどで出来ていない事も多々あるので、確認は必要だろう。mysqlはshow tables コマンドに対応してるのでこんなスクリプトで確認する事が可能である。
テーブルの存在確認スクリプト <?php
//-----------------------------------------------------------------------

$server="localhost";
$user="bs****";
$password="****";
$database2="bs****";
$connect = mysql_connect($server,$user,$password);
$database["sql"]="show tables from ".$database2;
if($result=mysql_query($database["sql"])){
  while($row=mysql_fetch_row($result)){
  print("<BR>".$row[0]);
}
}
else{
  print("fail");
}
 画面にテーブル名が並んでくれば問題なく作成されている事になる。
 後はのそのそsqlを書いてプログラムを作成して行けば良い事になる。
 やっぱりGUIツールはあった方が便利だなあ。と言うのが今回の感想です。
 
2003/11/14 池