MySQL,作为一款开源的关系型数据库管理系统,凭借其高性能、可靠性和易用性,在众多DBMS中脱颖而出,成为众多企业和开发者的首选
特别是在Linux环境下,通过YUM(Yellowdog Updater, Modified)包管理器安装MySQL,不仅能够大大简化安装过程,还能确保软件版本的最新与安全
本文将详细介绍如何使用YUM安装MySQL,以及安装后的基本配置与优化,帮助您在Linux系统上高效部署MySQL数据库
一、YUM包管理器简介 YUM(Yellowdog Updater, Modified)是基于RPM包管理的一个前端工具,主要用于Fedora、CentOS、RHEL(Red Hat Enterprise Linux)等Linux发行版
它提供了自动解决依赖关系、软件仓库管理、软件包搜索、安装、更新、删除等功能,极大地简化了Linux环境下的软件管理
二、准备工作 在开始安装MySQL之前,有几个准备工作需要完成: 1.确保系统更新:安装前,最好先更新系统软件包,以确保依赖关系的正确性
bash sudo yum update -y 2.添加MySQL Yum Repository:MySQL官方提供了专用的YUM仓库,可以方便地获取最新版本的MySQL软件包
bash sudo yum localinstall https://dev.mysql.com/get/mysql80-community-release-el7-3.noarch.rpm 注意:URL可能会根据MySQL的版本不同而有所变化,请访问MySQL官方网站获取最新的RPM包链接
3.检查可用的MySQL版本:添加仓库后,可以使用以下命令查看可用的MySQL版本
bash yum repolist enabled | grep mysql.-community. 三、安装MySQL 选择好要安装的MySQL版本后,可以开始正式的安装过程
以下以安装MySQL8.0社区版为例: 1.禁用其他版本的MySQL仓库(可选,但推荐):为了避免版本冲突,可以临时禁用其他版本的MySQL仓库
bash sudo yum-config-manager --disable mysql57-community sudo yum-config-manager --disable mysql80-community-source sudo yum-config-manager --enable mysql80-community 2.安装MySQL服务器: bash sudo yum install mysql-community-server -y 3.启动MySQL服务:安装完成后,启动MySQL服务并设置开机自启
bash sudo systemctl start mysqld sudo systemctl enable mysqld 4.获取临时root密码:MySQL安装完成后,会在`/var/log/mysqld.log`文件中生成一个临时的root密码
使用以下命令查找该密码
bash sudo grep temporary password /var/log/mysqld.log 四、安全配置MySQL 获取临时密码后,首次登录MySQL时,系统会强制要求你更改密码并进行一系列安全设置
1.登录MySQL: bash mysql -u root -p 输入临时密码登录
2.更改root密码:MySQL 8.0及以后版本,建议使用`ALTER USER`命令更改密码,并遵循强密码策略
sql ALTER USER root@localhost IDENTIFIED BY NewStrongPassword!; 3.运行安全脚本:MySQL提供了一个安全安装脚本`mysql_secure_installation`,可以帮助你完成一系列安全配置,如删除匿名用户、禁止root远程登录、删除测试数据库等
bash sudo mysql_secure_installation 五、基本配置与优化 安装并安全配置好MySQL后,根据实际需求进行一些基本配置与优化,可以进一步提升MySQL的性能和稳定性
1.配置字符集和排序规则:编辑MySQL配置文件`/etc/my.cnf`(或`/etc/mysql/my.cnf`,具体路径可能因系统而异),设置默认的字符集和排序规则
ini 【mysqld】 character-set-server=utf8mb4 collation-server=utf8mb4_general_ci 2.调整缓冲区大小:根据服务器的内存大小,适当调整InnoDB缓冲池大小(`innodb_buffer_pool_size`)、查询缓存(`query_cache_size`,注意MySQL8.0已移除该选项)等关键参数,以提高数据库性能
3.日志管理:合理配置错误日志、二进制日志、慢查询日志等,有助于问题排查和性能调优
ini 【mysqld】 log_error = /var/log/mysql/error.log general_log =1 general_log_file = /var/log/mysql/general.log slow_query_log =1 slow_query_log_file = /var/log/mysql/slow.log long_query_time =2 4.调整最大连接数:根据应用需求调整`max_connections`参数,避免连接数耗尽导致的服务不可用
5.应用配置更改:修改配置文件后,需重启MySQL服务使更改生效
bash sudo systemctl restart mysqld 六、备份与恢复 数据备份是数据库管理中至关重要的一环
MySQL提供了多种备份方法,如物理备份工具`mysqldump`、逻辑备份工具`xtrabackup`等
1.使用mysqldump进行逻辑备份: bash mysqldump -u root -p --all-databases > all_databases_backup.sql 2.恢复备份: bash mysql -u root -p < all_databases_backup.sql 3.定期自动备份:可以使用cron作业定期执行备份脚本,实现自动化备份
七、监控与性能调优 为了确保MySQL的高效运行,持续的监控和性能调优是必不