安装步骤
1. 解压安装包
tar -xf mysql-8.0.33-el7-x86_64.tar.gz
2. 移动解压后的文件夹
mv mysql-8.0.33-el7-x86_64 mysql mv mysql /usr/local/
3. 创建MySQL用户
useradd -s /sbin/nologin mysql
4. 设置权限
chown -R mysql:mysql /usr/local/mysql/ chown mysql:mysql /etc/my.cnf
5. 配置MySQL
编辑 /etc/my.cnf
文件,覆盖为以下配置(可以把原配置注释掉):
# 客户端配置 [client] port = 3306 # MySQL客户端连接的默认端口 socket=/usr/local/mysql/mysql.sock # MySQL客户端连接的socket文件路径 # MySQL服务器配置 [mysqld] user = mysql # 运行MySQL服务的系统用户 basedir=/usr/local/mysql # MySQL安装目录的路径 datadir=/usr/local/mysql/data # MySQL数据文件的存储目录 port = 3306 # MySQL服务器监听的端口号 character-set-server=utf8 # 服务器端默认字符集 pid-file = /usr/local/mysql/mysqld.pid # MySQL服务器进程ID文件的路径 socket=/usr/local/mysql/mysql.sock # MySQL服务器使用的socket文件路径 bind-address = 0.0.0.0 # MySQL服务器绑定的IP地址,0.0.0.0表示监听所有可用的网络接口 skip-name-resolve # 禁用DNS解析,提高连接速度,但可能导致无法使用主机名连接 max_connections=2048 # 允许的最大并发连接数 default-storage-engine=INNODB # 默认存储引擎,这里设置为InnoDB max_allowed_packet=16M # 允许的最大数据包大小,单位为字节 server-id = 1 # MySQL复制中的唯一标识符,用于主从复制 sql_mode = STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION # SQL模式设置,定义了MySQL应如何处理SQL语句
6. 设置环境变量
echo "PATH=$PATH:/usr/local/mysql/bin" >> /etc/profile source /etc/profile
7. 初始化数据库
cd /usr/local/mysql/bin/ ./mysqld --initialize-insecure --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data
8. 设置系统服务
cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld chmod +x /etc/init.d/mysqld systemctl daemon-reload systemctl restart mysqld
9. 设置root密码
mysqladmin -u root password "123456"
10. 登录MySQL并配置远程访问
mysql -u root -p123456
在MySQL shell中执行:
CREATE USER 'root'@'%' IDENTIFIED BY '123456'; GRANT ALL PRIVILEGES ON *.* TO 'root'@'%'; flush privileges; ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '123456';
注意
- 安全性:在生产环境中,请务必设置强密码,并限制远程访问权限。
- 防火墙:确保服务器的防火墙允许3306端口的流量。
- SELinux:如果启用了SELinux,可能需要额外配置以允许MySQL的网络访问。
- 备份:在修改配置或进行重要操作前,请务必备份数据库。