みんなの「教えて(疑問・質問)」にみんなで「答える」Q&Aコミュニティ

こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

解決済みの質問

phpでMysqlを複数扱う方法・接続方法

説明がわかりにくくなってしまうかもれないのですが、引き続き釣りのコミュニティサイトのようなもの作っており先ほど画像に関しての質問をここで解決したのですがさらに別問題が。

プロフ画像などを予定しておりましが一緒に釣った魚などもアルバムのようにみんなで保存しておく環境をつくろうと思ったのですが容量がいっぱいになる問題が怖いです。

そんなすぐにいっぱいになることはないと思うのですが、スマホでとってそのままアップするなど元サイズの容量がおおきくなってしまうとおもい、ついでに複数扱う方法を勉強しようとおもったしだいであります。

環境MYSQL
DB1情報
ホスト test1.sql.cd
DB名 demo1
ID admin1
パス pass1

DB2情報
ホスト test2.sql.cd
DB名 demo2
ID admin2
パス pass2

このようにホスト名・データベース名などすべてが違う場合、その度にファイルを読み込んだりするのでしょうか?

現在
『config.php』DB_NAMEなどを書いているファイル
『sample.php』
private function __construct() {
$pdo = new PDO(
// DSN (Data Source Name)
sprintf('mysql:dbname=%s;host=%s;charset=utf8',
DB_NAME,
DB_HOST
),
DB_USER,
DB_PASS,
);
}
『index.php』
try {
$user = DB::connect()->userProfile($id);
} catch (Exception $e) {

// エラーページに遷移
error_page($e);

}
このような感じで作っています。

分からない点
上記のように順番に読み取り各ページで呼び出しているのですが『sample.php』をもう一つ『sample2.php』というふうに作り同じように書いていけば使えるものなのでしょうか?

また、その場合sample.phpとsample2.phpを常に読み込んでいる状態になるのでしょうか?
そうなると処理速度などどうなのかなとか思ってしまいます。

sample.phpのプロフィールIDとsample2.phpの画像を一致したもの呼び出すのは統合(今回はホストも違うから外部統合?)で出来ると調べたのですが常に接続状態になるのかなど、やり方的にあっているのか不安でご質問させて頂きました。

そもそもつないでいるのは
$user = DB::connect()->userProfile($id);
などアクションを要求した際におこるのか、毎回すべてのファイルを読み込みアクションが要求されたら処理の部分を読み込むのか理解していません。
アクションを起こした際に読みに行くなどなら問題なくやればいいと思うのですが、いかがなのでしょうか?


ご質問がわかりにくくなってしまって申し訳ございませんが、よろしくお願いいたします。

投稿日時 - 2014-05-16 11:16:34

QNo.8597435

困ってます

質問者が選んだベストアンサー

ファイルをアップするサーバーを複数用意して、DBは一つでいいのでは?
ファイル自体は容量を食いますが、DB上のデータなんてたかが知れています
DBサーバーが複数に分かれると同期がそれなりにめんどくさいことになりますので

投稿日時 - 2014-05-16 14:20:20

ANo.1

このQ&Aは役に立ちましたか?

0人が「このQ&Aが役に立った」と投票しています

回答(1)

あなたにオススメの質問