PHP

PHPからMySQLに接続する方法と接続できない時の対処法

2021年2月22日

PHPからMySQLに接続する方法

PHPからMySQLに接続する場合は、PHPの組込み関数 mysqli_connect() を使用します。

関数名に注意

PHPの組込み関数には mysql_connect() もありますが、PHP5.5.0で非推奨となりPHP7.0.0で削除されました。PHP7で動作させる可能性がある場合は、mysqli_connect() を使いましょう。

SANACHAN
SANACHAN
MySQLiを使います。最後に「i」があるので注意してください。

 

PHP:mysqli_connect() の書式

 書式
mysqli_connect($host, $username, $passwd, $dbname, $port, $socket)

 

PHP:mysqli_connect() の引数

引数 パラメータ
$host string ホスト名、またはIPアドレス
$username (任意) string 接続するMySQLのユーザー名
$passwd (任意) string 接続する$usernameのパスワード
$dbname (任意) string SQLクエリを実行するデフォルトのデータベース名
$port (任意) string MySQLサーバーに接続する際のポート番号
$socket (任意) string 接続に使用するソケット

 

PHP:mysqli_connect() の戻り値

成功すると、MySQLサーバーへの接続IDを返します。
失敗すると、false が返ります。

 

PHP:mysqli_connect() を使ったサンプルコード

 出力結果
$ php connect_mysql.php
MySQLへ接続成功!

 

PHPからMySQLに接続できない時の対処法

MySQLに接続する上記のサンプルでは、接続に失敗した際に
PHP の mysqli_connect_error() 関数でエラーメッセージを表示しています。

SANACHAN
SANACHAN
エラーメッセージで原因を把握し、対処しましょう。

 

Operation timed out

ホスト名、またはIPアドレスが間違っている可能性があります。
mysqli_connect() の引数 $host を確認しましょう。

 

Access denied for user 'ユーザー名'@'ホスト名'

MySQLのユーザー名かパスワードが間違っている可能性があります。
mysqli_connect() の引数 $user$passed を確認しましょう。

 

Unknown database 'データベース名'

存在しないデータベースを指定している可能性があります。
mysqli_connect() の引数 $dbname を確認しましょう。

 

Connection refused

MySQLサーバーが立ち上がっていない可能性があります。
サーバーの状態を確認しましょう。

 

こちらの記事もよく読まれています

  • この記事を書いた人
  • 最新記事
SANACHAN

SANACHAN

「生涯一エンジニア」を掲げ、大手グローバル企業でSE/PGとして8年勤め、キャリアアップ転職した現役のエンジニアです。世にあるメジャーな全プログラム言語(コボル除く)を自由に扱えます。一児の父。自分のため、家族のため、日々勉強してます。システムエンジニア、プログラミングに関する情報を蓄積している雑記帳です。

-PHP
-,