php本地部署支持哪些数据库_php连接mysql或sqlite配置方法【教程】

14次阅读

mysqlsqlite是本地部署php应用时最常用且原生支持度最高的两种数据库;前者需启用mysqlipdo扩展并运行独立服务,后者依赖sqlite3和pdo_sqlite扩展且无需服务进程。

php本地部署支持哪些数据库_php连接mysql或sqlite配置方法【教程】

如果您在本地部署 PHP 应用,需要选择兼容且易于配置的数据库系统,则 MySQL 和 SQLite 是最常用、原生支持度最高的两种选项。以下是针对这两种数据库的连接配置方法:

一、PHP 连接 MySQL 的配置方法

MySQL 是关系型数据库,需运行独立服务(如 MySQL Server 或 mariadb),PHP 通过 mysqli 扩展或 PDO 驱动与其通信。确保 php.ini 中已启用 mysqlnd 或 mysqli 扩展。

1、确认扩展已启用:打开 php.ini 文件,检查是否存在 extension=mysqliextension=pdo_mysql,并确保前面无分号注释。

2、重启本地 Web 服务器(如 apachenginx)使配置生效。

立即学习PHP免费学习笔记(深入)”;

3、创建测试连接脚本,例如 connect_mysql.php:

4、在脚本中使用 mysqli 面向对象方式连接:$conn = new mysqli(“localhost”, “root”, “password“, “testdb”, 3306);

5、若使用 PDO 方式,代码为:$pdo = new PDO(“mysql:host=localhost;dbname=testdb;charset=utf8mb4”, “root”, “password”);

二、PHP 连接 SQLite 的配置方法

SQLite 是嵌入式数据库,无需单独安装服务进程,PHP 默认启用 pdo_sqlite 和 sqlite3 扩展,仅需确保扩展未被禁用即可直接读写 .sqlite 文件。

1、检查 php.ini 中是否存在 extension=sqlite3extension=pdo_sqlite,并确认未被注释。

2、保存 php.ini 后重启 Web 服务器。

3、创建数据库文件(如 data.sqlite)可直接通过 PHP 创建:$db = new SQLite3(“data.sqlite”);

4、执行建表语句:$db->exec(“CREATE table if NOT EXISTS users (id Integer PRIMARY KEY, name TEXT);”);

5、若使用 PDO 连接 SQLite,语法为:$pdo = new PDO(“sqlite:data.sqlite”);

三、验证数据库扩展是否可用的方法

PHP 提供内置函数检测扩展加载状态,避免因扩展缺失导致连接失败。该方法不依赖外部工具,仅需一个 PHP 脚本即可完成诊断。

1、新建 check_ext.php 文件。

2、写入代码:var_dump(extension_loaded(“mysqli”), extension_loaded(“pdo_mysql”), extension_loaded(“sqlite3”), extension_loaded(“pdo_sqlite”));

3、通过浏览器或 CLI 执行该脚本。

4、输出中对应位置显示 bool(true) 表示扩展已成功加载。

四、常见连接失败原因及对应配置项检查

连接异常通常源于扩展未启用、服务未运行或权限配置错误。逐一核对以下关键配置点可快速定位问题根源。

1、检查 MySQL 服务是否正在运行:sudo systemctl status mysqllinux)或查看 windows 服务列表中 MySQL 是否启动。

2、确认 php.ini 路径正确:执行 php –ini 查看实际加载的配置文件路径,避免修改了错误的 php.ini。

3、验证 MySQL 用户权限:登录 MySQL 后执行 select User, Host FROM mysql.user;,确保 root@localhost 或对应用户存在且允许本地连接。

4、SQLite 文件路径需为绝对路径或相对于脚本执行路径的可写位置,否则会报错 unable to open database file

text=ZqhQzanResources