如何在服务器上安装和安装数据库(如MySQL)?
拥有一台云服务器后,安装数据库通常是部署应用的关键第一步。本文将以最流行的开源数据库MySQL为例,为您提供一份从零开始的、详尽的MySQL安装教程。内容涵盖安装、初始化、安全配置及远程连接,帮助您快速搭建一个稳定可靠的数据库环境。
一、准备工作
在开始之前,请确保您已经:
拥有一台云服务器:无论是恒讯科技的云服务器,还是其他服务商,建议使用CentOS 7/8或Ubuntu 20.04/22.04等主流Linux发行版。
具备服务器访问权限:您需要通过SSH工具(如PuTTY、Xshell、Terminal)连接到您的服务器。
拥有root或sudo权限:执行安装命令需要较高的权限。
关键词:云服务器, MySQL安装教程, Linux环境
二、安装MySQL服务器
我们将使用MySQL官方提供的Yum源(适用于CentOS/RHEL)或APT源(适用于Ubuntu/Debian)进行安装,这能确保我们获取到最新且稳定的版本。
对于CentOS / RHEL 系统:
添加MySQL Yum源
bash
复制
下载sudo rpm -Uvh https://dev.mysql.com/get/mysql80-community-release-el7-11.noarch.rpm安装MySQL服务器
bash
复制
下载sudo yum install -y mysql-community-server启动MySQL服务并设置开机自启
bash
复制
下载sudo systemctl start mysqld sudo systemctl enable mysqld
对于Ubuntu / Debian 系统:
添加MySQL APT源
bash
复制
下载wget https://dev.mysql.com/get/mysql-apt-config_0.8.24-1_all.deb sudo dpkg -i mysql-apt-config_0.8.24-1_all.deb # 在弹出的配置界面直接选择 "OK" sudo apt-get update安装MySQL服务器
bash
复制
下载sudo apt-get install -y mysql-server安装过程中,可能会提示您设置root用户的密码,请务必设置一个强密码。
关键词:安装MySQL服务器, MySQL安全配置
三、进行初始安全配置
安装完成后,为了数据库的安全,强烈建议运行MySQL自带的安全脚本。
获取临时密码(仅CentOS需要)
在CentOS上,MySQL首次启动后会为root用户生成一个临时密码,查看方式如下:bash
复制
下载sudo grep 'temporary password' /var/log/mysqld.log记下显示的临时密码。
运行安全配置向导
执行以下命令:bash
复制
下载sudo mysql_secure_installation接下来,您会看到一系列提示,请根据情况选择:
验证密码插件:建议输入
y并设置一个强密码策略。更改ROOT密码:输入
y,然后设置一个新的、高强度的root用户密码。删除匿名用户?:输入
y。禁止root远程登录?:输入
y。这是数据库安全的关键一步,确保root用户只能在服务器本地登录。删除测试数据库?:输入
y。重新加载权限表?:输入
y。
完成以上步骤后,您的MySQL已经处于一个相对安全的状态。
关键词:数据库安全, MySQL安全配置, root密码
四、配置远程访问(可选但重要)
默认情况下,MySQL只允许本地连接。如果您的应用程序与数据库不在同一台服务器上,就需要配置远程访问。
警告:开启远程访问会增加安全风险,请务必设置强密码并谨慎操作。
登录MySQL
使用root用户登录:bash
复制
下载mysql -u root -p # 输入您刚设置的root密码创建一个专用用于远程连接的用户
在MySQL提示符下,执行以下命令。请将'your_strong_password'替换为一个复杂的密码,将'your_local_pc_ip'替换为您应用服务器的IP地址(使用%表示允许任何IP,但极不安全,不推荐)。sql
复制
下载CREATE USER 'remote_user'@'your_local_pc_ip' IDENTIFIED BY 'your_strong_password'; GRANT ALL PRIVILEGES ON *.* TO 'remote_user'@'your_local_pc_ip' WITH GRANT OPTION; FLUSH PRIVILEGES; EXIT;配置防火墙
您需要放行MySQL的默认端口(3306)。如果使用firewalld(CentOS):
bash
复制
下载sudo firewall-cmd --permanent --add-port=3306/tcp sudo firewall-cmd --reload如果使用ufw(Ubuntu):
bash
复制
下载sudo ufw allow 3306/tcp sudo ufw reload
修改MySQL绑定地址
编辑MySQL配置文件:bash
复制
下载# CentOS sudo vi /etc/my.cnf # Ubuntu sudo vi /etc/mysql/mysql.conf.d/mysqld.cnf找到
bind-address这一行,将其值从127.0.0.1修改为0.0.0.0。ini
复制
下载bind-address = 0.0.0.0保存后,重启MySQL服务:
bash
复制
下载# CentOS sudo systemctl restart mysqld # Ubuntu sudo systemctl restart mysql
现在,您就可以从指定的IP地址远程连接到这台服务器上的MySQL数据库了。
关键词:数据库远程访问, MySQL配置, 防火墙配置
五、基本操作与故障排除
登录MySQL:
mysql -u root -p查看所有数据库:
SHOW DATABASES;创建一个新数据库:
CREATE DATABASE myapp_db;选择使用一个数据库:
USE myapp_db;
常见问题:
忘记root密码:需要停止MySQL服务,并使用
--skip-grant-tables参数启动后进行重置。无法远程连接:请依次检查:① 防火墙规则;② MySQL绑定地址;③ 远程用户的授权IP地址。
结语
通过以上步骤,您已经成功在云服务器上安装并配置了一个生产环境级别的MySQL数据库。正确的MySQL配置是保障您网站或应用数据稳定的基石。
浙公网安备 33010602011771号