在基于Debian/Ubuntu的系统上:
sudo apt update
sudo apt install mysql-server
在基于RHEL/CentOS的系统上:
sudo yum install mysql-server
# 或对于较新版本
sudo dnf install mysql-server
运行安全安装脚本:
sudo mysql_secure_installation
按照提示操作: - 设置root密码 - 移除匿名用户 - 禁止root远程登录 - 移除测试数据库 - 重新加载权限表
编辑MySQL配置文件(通常位于/etc/mysql/my.cnf
或/etc/my.cnf
):
[mysqld]
# 设置字符集为UTF-8
character-set-server = utf8mb4
collation-server = utf8mb4_unicode_ci
# 绑定IP地址(如果需要远程访问)
# bind-address = 0.0.0.0
# 其他常用配置
max_connections = 100
innodb_buffer_pool_size = 256M
sudo systemctl start mysql
sudo systemctl enable mysql
登录MySQL:
sudo mysql -u root -p
创建数据库和用户:
CREATE DATABASE mydatabase CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
CREATE USER 'myuser'@'localhost' IDENTIFIED BY 'mypassword';
GRANT ALL PRIVILEGES ON mydatabase.* TO 'myuser'@'localhost';
FLUSH PRIVILEGES;
确保PHP已安装MySQL扩展:
sudo apt install php-mysql # Debian/Ubuntu
sudo yum install php-mysql # RHEL/CentOS
创建PHP测试文件(如/var/www/html/testdb.php
):
<?php
$servername = "localhost";
$username = "myuser";
$password = "mypassword";
$dbname = "mydatabase";
// 创建连接
$conn = new mysqli($servername, $username, $password, $dbname);
// 检查连接
if ($conn->connect_error) {
die("连接失败: " . $conn->connect_error);
}
echo "连接成功";
$conn->close();
?>
sudo ufw allow 3306/tcp # Ubuntu
sudo firewall-cmd --permanent --add-port=3306/tcp # CentOS/RHEL
sudo firewall-cmd --reload
innodb_buffer_pool_size
OPTIMIZE TABLE tablename;
设置定期备份:
# 简单备份命令
mysqldump -u myuser -p mydatabase > mydatabase_backup.sql
建议设置cron任务自动备份。
通过以上步骤,您已经成功在LAMP环境中配置了MySQL数据库,可以开始开发您的Web应用程序了。