
MySQL作为最流行的开源关系型数据库管理系统之一,提供了丰富的功能和强大的性能
在Linux上安装MySQL通常有多种方法,而使用RPM包安装是一种高效且常用的方式
本文将详细介绍如何在Linux系统上通过RPM包安装MySQL,并提供一些额外的配置和优化建议,确保你的MySQL安装既安全又高效
一、准备工作 在开始安装之前,确保你的系统满足以下基本要求: 1.操作系统:本文适用于基于RPM的Linux发行版,如CentOS、RHEL(Red Hat Enterprise Linux)、Fedora等
2.用户权限:你需要具有root用户权限或使用sudo命令来执行安装和配置任务
3.网络连接:确保你的系统可以访问互联网,以便下载MySQL的RPM包及其依赖项
4.存储空间:确保有足够的磁盘空间来安装MySQL及其数据文件
二、添加MySQL Yum存储库 为了方便安装和管理MySQL,官方提供了Yum存储库
使用Yum存储库可以确保你安装的是最新版本的MySQL,并且可以自动处理依赖关系
1.下载并添加MySQL Yum存储库配置文件 首先,下载MySQL Yum存储库的RPM包: bash sudo wget https://dev.mysql.com/get/mysql80-community-release-el7-5.noarch.rpm 请注意,URL中的`el7`适用于CentOS7和RHEL7,如果你使用的是其他版本,请相应调整URL
例如,对于CentOS8或RHEL8,使用`el8`
2.安装MySQL Yum存储库RPM包 使用rpm命令安装下载的RPM包: bash sudo rpm -ivh mysql80-community-release-el7-5.noarch.rpm 安装完成后,Yum存储库将被添加到系统中
三、安装MySQL服务器 1.更新Yum缓存 在安装MySQL之前,更新Yum缓存以确保获取最新的包信息: bash sudo yum clean all sudo yum makecache 2.安装MySQL服务器 使用yum命令安装MySQL服务器包: bash sudo yum install mysql-server 这将安装MySQL服务器及其所有必需的依赖项
3.启动MySQL服务 安装完成后,启动MySQL服务: bash sudo systemctl start mysqld 4.设置MySQL服务开机自启动 为了确保MySQL在系统启动时自动启动,使用以下命令: bash sudo systemctl enable mysqld 四、获取初始密码并登录MySQL 1.获取初始密码 MySQL5.7及更高版本在安装过程中会自动生成一个临时密码
你可以在MySQL日志文件中找到这个密码
通常,日志文件位于`/var/log/mysqld.log`
使用grep命令查找临时密码: bash sudo grep temporary password /var/log/mysqld.log 记下显示的临时密码
2.登录MySQL 使用临时密码登录MySQL: bash mysql -u root -p 系统会提示你输入密码,输入刚才找到的临时密码
五、修改root密码并进行安全配置 1.修改root密码 登录MySQL后,首先修改root密码
MySQL5.7及更高版本要求使用`ALTER USER`命令来修改密码,并且密码必须符合强密码策略
sql ALTER USER root@localhost IDENTIFIED BY NewPassword!; 请将`NewPassword!`替换为你自己的强密码
2.运行安全配置脚本 MySQL提供了一个安全配置脚本`mysql_secure_installation`,可以帮助你进行一系列安全配置,如删除匿名用户、禁止root远程登录、删除测试数据库等
退出MySQL命令行客户端,然后运行安全配置脚本: bash sudo mysql_secure_installation 按照提示进行操作,例如设置新密码、删除匿名用户、禁止root远程登录等
六、配置MySQL 1.编辑MySQL配置文件 MySQL的配置文件通常位于`/etc/my.cnf`或`/etc/mysql/my.cnf`
你可以使用文本编辑器打开并编辑配置文件
bash sudo nano /etc/my.cnf 在配置文件中,你可以根据需要调整各种参数,例如内存分配、缓存大小、日志文件位置等
2.调整字符集和排序规则 为了确保MySQL支持多语言字符集,你可以在配置文件中设置默认字符集和排序规则
ini 【mysqld】 character-set-server=utf8mb4 collation-server=utf8mb4_unicode_ci 【client】 default-character-set=utf8mb4 【mysql】 default-character-set=utf8mb4 3.重启MySQL服务 每次修改配置文件后,需要重启MySQL服务以使更改生效
bash sudo systemctl restart mysqld 七、创建用户和数据库 1.创建新用户 使用`CREATE USER`语句创建新用户,并为其分配密码
sql CREATE USER newuser@localhost IDENTIFIED BY password; 2.授予权限 使用`GRANT`语句为新用户授予权限
例如,授予所有权限给新用户: sql GRANT ALL PRIVILEGES ON- . TO newuser@localhost WITH GRANT OPTION; 或者,只授予特定数据库的权限: sql GRANT ALL PRIVILEGES ON database_name. TO newuser@localhost; 3.刷新权限 每次授予或撤销权限后,使用`FLUSH PRIVILEGES`语句刷新权限表
sql FLUSH PRIVILEGES; 八、优化MySQL性能 1.调整InnoDB缓冲区池大小 InnoDB缓冲区池是MySQL内存中最重要的部分之一,用于缓存数据和索引
根据你的系统内存大小,调整`innodb_buffer_pool_size`参数
ini 【mysqld】 innodb_buffer_pool_size=1G 2.调整查询缓存 虽然MySQL8.0已经废弃了查询缓存,但如果你使用的是MySQL5.7或更早版本,可以根据需要调整查询缓存大小
ini 【mysqld】 query_cache_size=64M query_cache_type=1 3.调整日志文件大小 根据需求调整二进制日志、错误日志和慢查询日志的大小和位置
ini 【mysqld】 max_binlog_size=100M log_error=/var/log/mysql/
MySQL8重置Root密码教程
Linux上快速安装MySQL RPM包指南
MySQL前缀流水号:高效管理数据库记录的新技巧
MySQL8安装指南:轻松搞定1001步骤
MySQL预处理:提升效率与安全性优势
MySQL调用存储过程指南
STS助力高效管理MySQL数据库
MySQL Linux C语言绑定变量详解
Linux下MySQL数据快速导入指南
Linux环境下MySQL数据库数据清理指南:如何安全删除数据库
Linux终端轻松启动MySQL数据库:步骤详解
Linux下MySQL字段修改实操指南
Linux装MySQL前,必删旧版步骤指南
Linux系统安装MySQL5.6.27教程
Linux系统下快速链接MySQL指南
Linux环境下MySQL无法登录?排查与解决方案大揭秘
如何在Linux系统中设置MySQL的最大CPU占用率
Linux MySQL性能优化参数指南
Linux下MySQL密码重置指南