質問

PHP でリモートの mysql データベースに接続する必要があります。

具体的にはこれを定数として持っています:定義("DATABASE_SERVER", "ローカルホスト");...

$db = @mysql_connect(DB_SERVER, DB_USER, DB_PASS);

サイトをローカル マシンにコピーし、メイン データベースには接続したままにしたいと考えています。

やってもいいですか?もしそうなら、どのようにして?私が持っているのはFTPアクセスだけです。

役に立ちましたか?

解決

あなたは、DBのIP / URLを必要とし、localhostの代わりにそれを置く。
あなたは、DBの設定は、ローカルネットワークの外部/リモート接続を許可することを確認する必要があります。
あなたは(それがサポートされている場合は、サポートチームによって与えられるべきである)DBのIPを取得したら、あなたは知っているだろう。

あなたがする必要があるすべてのデータをコピーし、あなたは、ライブデータを破壊するのphpMyAdminに輸出]タブを使用していないので、あなたのマシン上でローカルにそれを構築している場合。私はあなたがあまりにも多くのデータを持っていないと仮定します。
PHPmyadmin->(左側のフレームから)DBを選択 - (上、右フレーム)>プレス輸出TABを
。 そこから明らかである。
あなたはSQLとしてエクスポートし、ローカルマシン上でこのSQLを実行することができます。

他のヒント

私はあなたのデータベースサーバーがリモート接続を拒否していることを推測します。あなたがcPanelのを持っている場合は、特定のIP範囲にそれらを有効にすることができ、「リモートデータベースへのアクセス」のようなものというセクションがあります。

私はあなたの質問にデータベースをエクスポートし、それをローカルにインポートすることを示唆しています。この方法では、あなたが台無し場合、ライブデータを破壊しません。

多く、そうでない場合はほとんど、ホスティングプロバイダはまた、phpMyAdminのようなDBインタフェースを提供します。あなたはそこからデータベースをエクスポートすることができます。

+1 gnud。 は公共のインターネット・インターフェース(*)上の外部アクセスをリッスンするように設定することができ、あなたはをしても、開発作業のために本番データベースを使用しないでください。一つのマウスの滑りと、あなたは、重要なライブデータをオーバー走り書きしています。代わりに、あなたは、彼らが作業し、テストしているときに、ライブサーバーへのコードの変更をプッシュすることができ、そこから自分自身のスタンドアロン開発サーバー、上で作業する必要があります。

(*:自体に非常に悪い考えですどちら:パスワードが弱すぎるか、使用可能なエクスプロイトでのMySQLの古いバージョンを実行している場合、あなたは非常に迅速に自動化されたプローブによってハッキングを取得しようとしている。)

あなたは、通常mysqldump dbname > dbdump.sqlコマンドを使用してシェルからデータベースをエクスポートし、mysql dbname < dbdump.sqlにそれをパイプして、ローカルサーバーにインポートしたいです。また、あなたが使用できるサーバー上にインストールしたMySQL管理Webインターフェイスがあるかもしれません。あなたが持っているすべてのFTPである場合でも、あなたは本当にあなたが開発作業を行うために必要なツールを与えられていません。あなたがサイトをテストするために、空やダミーのデータベースを得ることができるかどうかを確認します。

(しかも、FTPは本当にあなたがSFTPを使用する必要があり、この世紀に...厄介なビジネスである。)

最も簡単なアプローチは、 DATABASE_SERVER として定義される database (または同等の意味のあるもの)ホストファイルにエントリを追加します。ローカル マシンではこれはリモート アドレスを指すことができ、サーバーではこれは 127.0.0.1 を指します。

define('DATABASE_SERVER', database);

Windows では、サイト ファイルは次のとおりです。

c:\windows\system32\drivers\etc\hosts

と:

database <remote_ip>

Linux:

/etc/hosts

と:

database 127.0.0.1

サイドノート:リモート DB は本番 DB ですか?もしそうなら、別の開発 DB を使用しない限り、開発作業にリモート DB を実際に使用すべきではありません。たとえその場合でも、不正な開発クエリがリモート DB リソースを使い果たす危険はありません。

アップデート: ああ、FTP アクセスに制限されているのを見逃していました。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top