[前][次][番号順一覧][スレッド一覧]

mysql:14405

From: Imanari Toshiharu <Imanari Toshiharu <zbg29998@xxxxxxxxxx>>
Date: Thu, 06 Mar 2008 17:43:56 +0900
Subject: [mysql 14405] Re: 別DBへのバックアップ方法

こんにちは。今成です。

> いろいろ考えてみましたが、
> そもそも、データを挿入する段階で、両方にインサートした方がよさそうです
> ね。。

たぶんそれが良いと思います。その旨、返答するつもりでした。
一つツッコミを入れさせてください。


> 「mysql_connect」と「mysql_select_db」を、データベース B に繋ぎ直して、

mysql_connectでのつなぎ直しは今回の事例では不要です。mysql_connectでの再
接続が必要になるのは、MySQLサーバのインスタンスが別々である場合です。
データベースへのコネクション確立はリソースを消費する以外にも時間がかかる
作業であり、使い回せるならばなるべく使い回すほうがよい、と多くの書籍に書
かれています。

さらに、mysql_select_dbも必ずしも必要ではなかったように思います。具体的
には次のようになると思います。
 $link =  mysql_connect( "localhost", "XXXX", "YYYY" );
 mysql_query("insert into A.X values( ・・・
 mysql_query("insert into B.X values( ・・・


あと、インサート処理がビジネスロジックの一カ所で済む場合は、両方のテーブ
ルにインサートするという方法で良いのですが、複数箇所でインサートしたり、
PHP以外からもインサートすることが想定されるならば、PHPでの処理をあきらめ
てMySQLサーバ側で処理することになると思います。ちょっと前のMLでも話題に
なりましたが、トリガという機能を使います。


yahoomail さんは書きました:
> shinです。自己レスです。
> 
> 
> いろいろ考えてみましたが、
> そもそも、データを挿入する段階で、両方にインサートした方がよさそうです 
> ね。。
> 
> 
> 一度、データベース A の テーブル X にデータをインサートした後、
> 「mysql_connect」と「mysql_select_db」を、データベース B に繋ぎ直して、
> 同じデータを、データベース B のテーブル X にもインサートすると
> いう事で行こうと思います。
> 
> $link =  mysql_connect( "localhost", "XXXX", "YYYY" );
> $db_selected = mysql_select_db('A'); ← データベース A
> 
> 〜〜〜処理〜〜〜
> 
> $link =  mysql_connect( "localhost", "XXXX", "YYYY" );
> $db_selected = mysql_select_db('B'); ← データベース B
> 
> 〜〜〜処理〜〜〜
> 
> ご指摘がありましたら、教えて頂けるとありがたいです。
> 
> 以上、お騒がせしました。
> 
> ----- Original Message ----- From: "yahoomail" <js6drm@xxxxxxxxxx>
> To: <ml@xxxxxxxxxx>
> Sent: Thursday, March 06, 2008 1:28 PM
> Subject: [mysql 14403] Re: 別DBへのバックアップ方法
> 
> 

[前][次][番号順一覧][スレッド一覧]

     14399 2008-03-06 10:53 ["yahoomail" <js6drm@] 別DBへのバックアップ方法                
     14401 2008-03-06 11:27 ┣[c-atwork <ml@xxxxxxx]                                       
     14402 2008-03-06 11:29 ┗[今成利晴 <zbg29998@x]                                       
     14403 2008-03-06 13:28  ┗["yahoomail" <js6drm@]                                     
     14404 2008-03-06 14:21   ┣["yahoomail" <js6drm@]                                   
->   14405 2008-03-06 17:43   ┃┗[Imanari Toshiharu <z]                                 
     14406 2008-03-06 18:08   ┗[Shima Shizuo <r6@xxx]                                   
     14412 2008-03-13 10:05    ┗["yahoomail" <js6drm@] Re: 別DBへのバックアップ方法(お礼)