php如何连接mysql数据库_php连接mysql数据库完整步骤解析

PHP连接MySQL需配置环境并选择扩展,推荐使用PDO方式。首先确认PHP与MySQL已安装且支持mysqli或PDO;接着创建数据库及用户权限;然后通过MySQLi过程、对象或PDO方式连接,其中PDO支持多种数据库、安全性高;连接后可执行SQL查询如SELECT NOW()验证;最后及时关闭连接释放资源。开发中应避免明文密码,使用配置文件管理敏感信息。

PHP连接MySQL数据库是动态网站开发中的基础操作。通过PHP与MySQL的结合,可以实现数据的存储、读取和管理。以下是使用PHP连接MySQL数据库的完整步骤,适用于初学者和需要快速回顾的开发者。

1. 确保环境已配置

在开始前,确认你的服务器环境支持PHP和MySQL:

  • 安装了PHP(建议版本 5.6 及以上,推荐使用 PHP 7+)
  • 安装并运行了MySQL数据库服务
  • PHP已启用mysqli或PDO扩展(通常默认开启)

你可以创建一个phpinfo.php文件,写入,在浏览器中访问,查看是否包含mysqlipdo_mysql信息。

2. 创建MySQL数据库和用户

登录MySQL命令行或使用phpMyAdmin等工具,执行以下操作:

  • 创建数据库:CREATE DATABASE test_db;
  • 创建用户并授权:CREATE USER 'db_user'@'localhost' IDENTIFIED BY 'password123';
  • 授权访问:GRANT ALL PRIVILEGES ON test_db.* TO 'db_user'@'localhost';
  • 刷新权限:FLUSH PRIVILEGES;

3. 使用MySQLi面向过程方式连接

这是最简单直接的方式,适合入门学习:

$conn = mysqli_connect($host, $username, $password, $dbname);

if (!$conn) { die("连接失败: " . mysqli_connect_error()); } echo "MySQLi连接成功"; ?>

4. 使用MySQLi面向对象方式连接

更推荐使用面向对象方式,结构清晰:

$conn = new mysqli($host, $username, $password, $dbname);

if ($conn->connect_error) { die("连接失败: " . $conn->connect_error); } echo "MySQLi面向对象连接成功"; ?>

5. 使用PDO方式连接(推荐)

PDO支持多种数据库,安全性更高,适合项目开发:

$dsn = "mysql:host=$host;dbname=$dbname;charset=$charset";
$options = [
PDO::ATTR_ERRMODE            => PDO::ERRMODE_EXCEPTION,
PDO::ATTR_DEFAULT_FETCH_MODE => PDO::FETCH_ASSOC,
PDO::ATTR_EMULATE_PREPARES   => false,
];

try { $pdo = new PDO($dsn, $username, $password, $options); echo "PDO连接成功"; } catch (\PDOException $e) { throw new \PDOException($e->getMessage(), (int)$e->getCode()); } ?>

6. 测试连接并执行简单查询

连接成功后,可尝试执行一条SQL语句验证:

$sql = "SELECT NOW() as time";
$result = $conn->query($sql); // MySQLi
// 或 $result = $pdo->query($sql); // PDO

if ($result->num_rows > 0) { while($row = $result->fetch_assoc()) { echo "当前时间:" . $row['time']; } }

7. 关闭连接

脚本执行完毕后,及时释放资源:

  • MySQLi:$conn->close();
  • PDO:连接会在脚本结束时自动关闭,也可手动置空:$pdo = null;

基本上就这些。选择合适的方式连接数据库,PDO因其安全性和灵活性更受现代PHP项目青睐。确保不要在代码中明文暴露数据库密码,生产环境应使用配置文件并限制访问权限。