在CentOS 7上使用yum命令安装MySQL是一个常见的任务,对于初学者和经验丰富的系统管理员来说都非常有用,本文将详细介绍如何在CentOS 7上通过yum安装MySQL,包括安装步骤、配置、启动服务以及常见问题的解答。
一、准备工作
1、更新系统:确保系统是最新的,以避免依赖问题。
sudo yum update y
2、安装基本依赖:
sudo yum install y gcc libxml2devel curl screen libpng12devel autoconf libpcre3devel make bzip2 libeventdevel patch libjpeg62turbodevel libcurl4openssldevel libfreetype6devel g++ libtool libncurses5devel psmisc lrzsz
二、下载并安装MySQL Yum Repository
1、下载MySQL Yum Repository包:
wget http://repo.mysql.com/mysql80communityreleaseel73.noarch.rpm
2、安装RPM包:
sudo rpm ivh mysql80communityreleaseel73.noarch.rpm
3、检查安装是否成功:
ls 1 /etc/yum.repos.d/mysqlcommunity
三、安装MySQL
1、安装MySQL服务器和客户端:
sudo yum install y mysqlserver mysql
2、启动MySQL服务:
sudo systemctl start mysqld
3、查看MySQL服务状态:
sudo systemctl status mysqld
确认服务已经成功启动。
四、配置MySQL
1、获取临时密码:首次登录MySQL时需要使用临时密码,可以在MySQL的错误日志中找到。
sudo grep 'temporary password' /var/log/mysqld.log
2、登录MySQL:使用临时密码登录。
mysql u root p
3、修改root用户密码:
ALTER USER 'root'@'localhost' IDENTIFIED BY 'NewPassword#123';
4、设置密码复杂度策略:
SET GLOBAL validate_password.policy=STRONG;
5、创建新用户和数据库(可选):
CREATE DATABASE testdb; CREATE USER 'testuser'@'localhost' IDENTIFIED BY 'UserPassword#123'; GRANT ALL PRIVILEGES ON testdb.* TO 'testuser'@'localhost'; FLUSH PRIVILEGES;
五、远程访问配置(可选)
1、编辑MySQL配置文件:
sudo vi /etc/my.cnf
2、修改绑定地址:将bindaddress = 127.0.0.1
改为bindaddress = 0.0.0.0
。
3、重启MySQL服务:
sudo systemctl restart mysqld
4、开放防火墙端口:
sudo firewallcmd permanent addport=3306/tcp sudo firewallcmd reload
六、完全删除MySQL(可选)
1、停止MySQL服务:
sudo systemctl stop mysqld
2、卸载MySQL:
sudo yum remove y mysql mysqlserver mysqllibs mysqlclient
3、删除残留数据:
sudo rm rf /var/lib/mysql /etc/my.cnf /etc/init.d/mysqld /var/log/mysqld.log /var/log/mysqld.err /etc/mysql/* /var/log/mysqld.log /var/log/mysqld.err /etc/logrotate.d/mysqld /var/lock/subsys/mysqld
4、清除缓存:
sudo yum clean all
七、FAQs
Q1:如何更改MySQL的数据存储位置?
A1:可以通过以下步骤更改MySQL的数据存储位置:
1、停止MySQL服务:
sudo systemctl stop mysqld
2、移动数据目录:假设新的数据目录为/newdatadir
。
sudo rsync av progress /var/lib/mysql/ /newdatadir/ sudo mv /var/lib/mysql/ /newdatadir/mysql sudo chown R mysql:mysql /newdatadir/mysql
3、编辑MySQL配置文件:打开/etc/my.cnf
,找到[mysqld]
部分,修改datadir
参数。
[mysqld] datadir=/newdatadir/mysql
4、重启MySQL服务:
sudo systemctl start mysqld
5、验证数据迁移:登录MySQL并检查数据完整性。
Q2:如何备份和恢复MySQL数据库?
A2:可以使用mysqldump
工具进行备份和恢复。
1、备份数据库:假设要备份名为testdb
的数据库。
mysqldump u root p testdb > testdb_backup.sql
2、恢复数据库:假设要恢复到新的数据库newdb
。
mysql u root p newdb < testdb_backup.sql