在CentOS上优化PHP数据库查询,可以遵循以下步骤:
yum安装数据库:sudo yum install mysql-server
sudo systemctl start mysqld
sudo systemctl enable mysqld
sudo mysql_secure_installation
/etc/my.cnf或/etc/mysql/my.cnf:[mysqld]
innodb_buffer_pool_size = 70% of RAM
query_cache_size = 64M
sort_buffer_size = 2M
join_buffer_size = 2M
tmp_table_size = 64M
max_heap_table_size = 64M
sudo systemctl restart mysqld
$stmt = $pdo->prepare('SELECT * FROM users WHERE id = :id');
$stmt->execute(['id' => $userId]);
$user = $stmt->fetch();
CREATE INDEX idx_username ON users(username);
SELECT id, username FROM users WHERE id = :id;
sudo yum install memcached
sudo systemctl start memcached
sudo systemctl enable memcached
sudo yum install redis
sudo systemctl start redis
sudo systemctl enable redis
EXPLAIN分析查询:EXPLAIN SELECT * FROM users WHERE id = :id;
SHOW PROFILES和SHOW PROFILE查看查询性能。Percona Monitoring and Management或Prometheus + Grafana。OPTIMIZE TABLE users;
通过以上步骤,可以显著提高在CentOS上运行的PHP应用程序的数据库查询性能。