温馨提示×

Ubuntu PHP-FPM如何与MySQL高效配合

小樊
36
2025-03-04 11:59:41
栏目: 云计算
亿速云mysql数据库,读写分离,安全稳定,弹性扩容,低至0.3元/天!! 点击查看>>

要在Ubuntu上高效地配置PHP-FPM与MySQL,可以遵循以下步骤:

  1. 安装必要的软件包: 在Ubuntu终端中运行以下命令来安装PHP、PHP-FPM和MySQL服务器:

    sudo apt-get update
    sudo apt-get install php php-fpm mysql-server
    
  2. 配置PHP-FPM: 编辑PHP-FPM配置文件以优化性能。使用以下命令打开配置文件:

    sudo nano /etc/php/7.x/fpm/pool.d/www.conf
    

    其中7.x应替换为您安装的PHP版本。在文件中找到以下行并进行调整:

    • request_terminate_timeout = 0(设置为0以禁用请求超时)
    • pm = dynamic(使用动态进程管理)
    • pm.max_children = 50(根据服务器资源调整最大子进程数)
    • pm.start_servers = 5(启动时的服务器进程数)
    • pm.min_spare_servers = 5(最小空闲服务器进程数)
    • pm.max_spare_servers = 35(最大空闲服务器进程数)
  3. 重启PHP-FPM服务: 保存并关闭配置文件后,运行以下命令以重启PHP-FPM服务:

    sudo systemctl restart php7.x-fpm
    

    其中7.x应替换为您安装的PHP版本。

  4. 配置MySQL: 优化MySQL配置以提高性能。使用以下命令打开MySQL配置文件:

    sudo nano /etc/mysql/mysql.conf.d/mysqld.cnf
    

    在文件中找到以下行并进行调整:

    • innodb_buffer_pool_size = 1G(为InnoDB缓冲池分配内存,根据服务器资源进行调整)
    • max_connections = 500(根据需要调整最大连接数)
    • query_cache_size = 64M(启用查询缓存并分配内存,根据需要调整大小)
    • query_cache_type = 1(启用查询缓存)
  5. 重启MySQL服务: 保存并关闭配置文件后,运行以下命令以重启MySQL服务:

    sudo systemctl restart mysql
    
  6. 使用持久连接: 在PHP代码中使用持久连接(persistent connection)来减少与MySQL服务器的连接次数。例如,使用mysqli扩展时,可以使用以下代码:

    $conn = new mysqli('p:localhost', 'username', 'password', 'database');
    

遵循以上步骤,您可以在Ubuntu上高效地配置PHP-FPM与MySQL。请注意,您可能需要根据服务器的具体资源和需求调整这些建议。

亿速云「云数据库 MySQL」免部署即开即用,比自行安装部署数据库高出1倍以上的性能,双节点冗余防止单节点故障,数据自动定期备份随时恢复。点击查看>>

推荐阅读:ubuntu php-fpm与nginx如何配合

0