MySQLでlocalhost以外が接続できません

このQ&Aのポイント
  • MySQLをlocalhost以外から接続する方法を教えてください。
  • MySQLで外部からの接続ができない場合の対処方法を教えてください。
  • MySQLの設定でskip-networkがコメントアウトされている場合、外部からの接続ができないのでしょうか?
回答を見る
  • ベストアンサー

MySQLでlocalhost以外が接続できません

Webサーバー上にMySQLを動作させていたため気付かなかったのですが、 外部からの接続が出来ませんでした。 内部からの接続もlocalhost指定以外は弾かれるようです。 例えばMySQL動作サーバーのIPアドレスが192.168.0.1の場合、 以下のPHPスクリプトでも弾かれます。 <?php $link = mysql_connect("192.168.0.1:3306", "username", "passwd") or die("Could not connect"); print ("Connected successfully"); mysql_close($link); ?> IPアドレス部分をlocalhostにするとconnectでエラーにはなりません。 以下がmy.cnfの設定抜粋なのです。 調べた所、skip-networkが指定されている場合、 外部から接続できないようなのですが、 コメントアウトされているのでよくわかりませんでした。 [mysqld] port = 3306 socket = /tmp/mysql.sock skip-locking key_buffer = 16M max_allowed_packet = 1M table_cache = 64 sort_buffer_size = 512K net_buffer_length = 8K myisam_sort_buffer_size = 8M #skip-network 最終的にはWebサーバー+DBサーバー(同一ノード)に、 別のWebサーバーからDB接続が出来るようにしたいです。 どうか、アドバイスをお願いいたします。

  • MySQL
  • 回答数1
  • ありがとう数1

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

  • ベストアンサー
回答No.1

mysql(DB)の設定を見直してください。

mac_mini
質問者

お礼

回答ありがとうございます。 解決いたしました。

関連するQ&A

  • PHPからMySQLに接続することができません。

    PHPからMySQLに接続することができません。 解決方法をご存じの方は教えていただけないでしょうか。 PHPから、mysql_connect を行った際、以下のエラーが発生してしまいます。 Can't connect to local MySQL server through socket '/tmp/mysql.sock' (13) 環境 OS:CentOS 5.3 DB:Mysql 5.0.67(ソースからインストール) Web:Apache PHPのソースの一部を以下に記します。   $db_host = 'localhost';//DB_NAME;   $db_user = 'user';//DB_USER;   $db_pass = 'pass';//DB_PASS;   $db = mysql_connect($db_host,$db_user,$db_pass); 以下の方法も試したのですが、エラーメッセージは変わりませんでした。   $mysql_connect("localhost:/tmp/mysql.sock","mysql","passwd") 端末のコマンドからMySQLへの接続は成功します。 ホスト名、ユーザー名、パスワードも上記と同一のものです。   $ /usr/local/mysql/bin/mysql -h localhost -u user -p   Enter password:pass 以上です。宜しくお願いします。

    • 締切済み
    • PHP
  • MySQLへの接続がうまくいっていないようなのですが

    つい最近PHPをはじめたばかりなのですが、環境を整えて試しにスクリプトを実行してみるとエラーが出てしまいました。 開発環境は Apache:2.0.53/PHP:5.2.1/MySQL:5.0.15 です。 実行したスクリプトは $dbHandle = mysql_connect("localhost","ユーザー","パスワード") or die("can not connect db\n"); 出てきたエラーが Warning: mysql_connect() [function.mysql-connect]: Can't connect to MySQL server on 'localhost' (10061) in C:\Program Files\Apache Group\Apache2\htdocs\myphp1.php on line 18 can not connect db MySQLへの接続ができていないとまでは理解できたのですが・・・・・ 申し訳ありませんが何卒よろしくお願いします。

    • 締切済み
    • PHP
  • PEAR::DBでのMySQL接続

    初心者で、環境が分からなくて困っています。 環境は、OS:Win2000 , PHP-V5.2.4 , MySQL-V5.0.45 , PEAR::DB -V1.7.13 です。 MySQLと、PEAR::DBをインストールして、CONNECTするPGを実行したところ、CONNECTエラーとなりました。 1.PHPソース require_once("DB.php"); $dsn="mysqli://pearusr:pearpass@localhost/pear"; $option=array( "autofree"=> TRUE, "debug"=>3, "portability"=> DB_PORTABILITY_ALL); $db=DB::connect($dsn,$option); if(DB::isError($db)){ die("接続失敗:".$db->getMessage().$db->getCode().$db->getDebuginfo()); } print("データベースへの接続に成功しました。"); $db->disconnect(); 2.エラーメッセージ 接続失敗:DB Error: connect failed-24 [nativecode=Can't connect to MySQL server on 'localhost' (10061)] ** mysqli://pearusr:pearpass@localhost/pear MySQL側の環境について、他QAでいろいろ教えていただき、ちゃんと起動できていそうです。 そうすると、次に疑うのは、PEAR::DBの環境がおかしいのではないか? という想像のもと、PEAR::DBの環境設定まわりで、確認すべき項目を教えていただけませんか。 よろしくお願いします。

    • ベストアンサー
    • PHP
  • PHPでのMySQL接続エラーについて

    PHPを使用してMySQLサーバに接続しようと思うのですが、どうしても "Warning: mysql_connect() [function.mysql-connect]: Can't connect to MySQL server on 'localhost' (10061) in C:\Server\Apache2.2\htdocs\htdocs\connect.php on line 2" と表示されて接続できません。いろいろ試してみたので、情報を列挙いたします。 動作環境 OS:WindowsXP Pro Apache2.2.8 PHP5.2.6 MySQL5.0 1.コマンドプロンプトからはMySQLに正常に入ることが可能です。 2.上記のエラーが出るPHPプログラムは以下の通りです。 "<?php %conn = mysql_connect("localhost", "root", "password"); ?> 3.phpMyAdminを使って接続しようとしても以下のエラーが出ます。 #2003 - サーバが応答しません" 4.セキュリティソフトを終了させて接続しても同様の症状でした。 5.phpinfo()関数は正常に動作し、mysqlやmysqliの情報も表示されます。 以上の内容ですが、よろしくお願いいたします。

    • ベストアンサー
    • MySQL
  • MySQLに接続

    php初心者です。すいませんが質問させてください。 Fedoracore4、MySQL、Apache、PHPを使ってMySQLに接続するプログラムを作成しましたが、何の反応もありません。 プログラムは <?php $link = mysql_connect("localhost", "ユーザID", "パスワード") or die("Could not connect"); print ("Connected successfully"); mysql_close($link); ?> です。 PHPのプログラムは問題なく動きます。 MySQL、Apacheは起動しています。 実行権限も問題ないです。 他に何か疑うポイントはありますでしょうか? ご存知の方いらっしゃいましたらご教授下さい。 すいませんがよろしくお願いします。

    • ベストアンサー
    • PHP
  • Postgresでlocalhost以外の接続がはじかれる

    Postgresでlocalhost以外の接続がはじかれる Postgresにlocalhost以外から接続を行うと はじかれてしまうようなのですが、 外部からの接続を許可するようにすることは できますか? 当方レンタルサーバでDBの保守はブラウザ版のphpPgAdmin で行っております。 どうぞ、よろしくお願いいたします。

  • Windows、Apache、PHP、MySQLを使ったwebアプリケーションのエラー

    widows環境でMySQLで作ったデータベースをApache+PHPでwebページで見れるようにしたいと思い、 http://www.yamada-lab.org/doc/win/mysql5/4/0401.html#a2 このページの通りに進めていました (データベースの内容は少し変更しました) しかし、いざページを開いてみると 「Parse error: syntax error, unexpected T_STRING in C:\test\connect01.php on line 8」 とでてきて、うまく表示されません。 syntax errorなので、文法ミスだとは思いますが、どこが違うかがわからないので、どなたか教えてください。 使用しているPCは   OS:Windows XP professional MySQL:5.1.38 PHP:5.2.10 apache:2.2.13 です。 --以下、connect01.phpの中身の途中まで-- <html> <head> <title>connect.php</title> </head> <body> <?php  //データベースサーバ名の設定  $db_host  = "localhost";  //ユーザ名の設定  $db_user  = "webapl";  //パスワードの設定  $db_passwd = "pass1234";  //データベースサーバへの接続  $db = mysql_connect($db_host,$db_user,$db_passwd); ---- エラーが出ているのは、「 $db_host  = "localhost";」の行ですが、 サーバー名、ユーザー名、パスワードに関する3項目を消し、 データベースサーバへの接続を $db = mysql_connect(localhost,webapl,pass1234); と書きかえても、この行でエラーが出ていました。

    • ベストアンサー
    • PHP
  • PHPから別のMySQLサーバへの接続

    宜しくお願い致します。 PHPから、localhostではなく、別にあるMySQLデータベースサーバへアクセスする際の指定の方法がわかりません。同じサーバ内にある場合は、 mysql_connect("localhost","db","password") といった形になると思うのですが別のサーバにアクセスする場合は、"localhost"の部分をどの様に指定すればよいのでしょう?仮にサーバのIPアドレスが『192.168.0.1』の場合で教えて頂けますと助かります。 宜しくお願いします!

    • ベストアンサー
    • PHP
  • PHP4からMySQLに接続できません。

    質問です。 PHPから、MySQLを操作したいのですが、 mysql_connect("localhost","user","pass") ですと、 Client does not support authentication protocol requested by server; consider upgrading MySQL client in~ というエラーが、 mysql_connect("localhost","root","") ですと、 Access denied for user 'root'@'localhost' (using password: NO) in~ というエラーがでて、 接続できません。 PHP4.3.10,MySQL4.1を使っており、単独では動作してい ます。 何か分かる人、お願いします。

    • ベストアンサー
    • PHP
  • MySqlに接続できない

    環境:PHP5,MySql5,XP 下記の構文でDBへの接続エラーがでます。 php.iniでのインクルードpathの設定もあっています。 (DB.phpも上記インクルードpathにあります) 'pear list'コマンドでDBも確かにインストールされています。 これ以外でチェックするところがあれば、教えてください。 <?php // DBクラスモジュールをインクルード require_once("DB.php"); $dbtype = "mysql"; $sv = "localhost"; $dbname = "********"; $user = "root"; $pass = "******"; // データベースに接続する $dsn = "$dbtype://$user:$pass@$sv/$dbname"; $conn = DB::connect($dsn); if (DB::isError($conn)) { die("接続エラー"); } ?>

    • ベストアンサー
    • PHP