アプリケーション開発ポータルサイト
ServerNote.NET
カテゴリー【UbuntuMySQLPHP
UbuntuにPHPを導入しMariaDBに接続するメモ
POSTED BY
2023-10-17

PHPのインストール

apt -y update
apt install php

バージョン確認

php -v
PHP 8.1.2-1ubuntu2.14 (cli) (built: Aug 18 2023 11:41:11) (NTS)
Copyright (c) The PHP Group
Zend Engine v4.1.2, Copyright (c) Zend Technologies
    with Zend OPcache v8.1.2-1ubuntu2.14, Copyright (c), by Zend Technologies

phpinfoの確認。以下phpinfo.phpを作成する。

<?php phpinfo();
?>

PDO関係はどうなっているか確認する。

php phpinfo.php | grep PDO
PDO
PDO support => enabled
PDO drivers =>
Firebird driver for PDO => Ard Biesheuvel
MySQL driver for PDO => George Schlossnagle, Wez Furlong, Ilia Alshanetsky, Johannes Schlueter
ODBC driver for PDO => Wez Furlong
Oracle (OCI) driver for PDO => Wez Furlong
PostgreSQL driver for PDO => Edin Kadribasic, Ilia Alshanetsky
SQLite 3.x driver for PDO => Wez Furlong

MySQLドライバはまだ無いようなのでインストールする。

apt install php-mysql

もう一度確認する。

php phpinfo.php | grep PDO
PDO
PDO support => enabled
PDO drivers => mysql
PDO Driver for MySQL => enabled
Firebird driver for PDO => Ard Biesheuvel
MySQL driver for PDO => George Schlossnagle, Wez Furlong, Ilia Alshanetsky, Johannes Schlueter
ODBC driver for PDO => Wez Furlong
Oracle (OCI) driver for PDO => Wez Furlong
PostgreSQL driver for PDO => Edin Kadribasic, Ilia Alshanetsky
SQLite 3.x driver for PDO => Wez Furlong

MySQLドライバが入ったので、コードで接続確認を行う。mysql.phpなどとして保存。

<?php $dbuser = 'hogedbuser';
$dbpass = 'hogedbpass';
$dbhost = '127.0.0.1';
$dbname = 'hogedbname';
$dbquery = "mysql:host=$dbhost;dbname=$dbname;";
try {
  $dbconn = new PDO($dbquery, $dbuser, $dbpass);
  //ok
  echo "connection success\n";
  //close
  $dbconn = null;
}
catch (PDOException $e) {
  echo 'connection error: ' . $e->getMessage() . "\n";
}

実行

php mysql.php
connection success
# 失敗時
connection error: SQLSTATE[HY000] [1698] Access denied for user 'hogedbuser'@'localhost'

※本記事は当サイト管理人の個人的な備忘録です。本記事の参照又は付随ソースコード利用後にいかなる損害が発生しても当サイト及び管理人は一切責任を負いません。
※本記事内容の無断転載を禁じます。
【WEBMASTER/管理人】
自営業プログラマーです。お仕事ください!
ご連絡は以下アドレスまでお願いします★

【キーワード検索】