首页
点滴
CentOS7 安装 MySQL5.7
之前已经在windows环境下安装了mysql5.7,windows环境下的用来开发还算可以,但是真正项目上线那肯定是要使用linux环境下的mysql的,本次演示CentOS7系统下安装mysql5.7 一般会将软件统一放在 /opt 目录下 #### 1、下载mysql源, 进入/opt目录,执行命令: ``` wget https://dev.mysql.com/get/mysql57-community-release-el7-11.noarch.rpm ``` ![](/images/20200112103822973.png) #### 2、可以看到/opt目录下已经有了rpm文件 ![](/images/20200112104033401.png) #### 3、执行命令:`rpm -qa|grep mysql` 检查是否已安装有mysql > 有就执行:rpm -e --nodeps xxx 卸载掉,xxx这里表示是执行rpm -qa|grep mysql打印出来的那信息,并不真的是xxx #### 4、安装mysql源 ``` yum -y localinstall mysql57-community-release-el7-11.noarch.rpm ``` ![](/images/20200112104544995.png) #### 5、检查 yum 源是否安装成功 ``` yum repolist enabled | grep "mysql.*-community.*" ``` > 可以看到 mysql yum源已经安装成功 ![](/images/20200112104753141.png) #### 6、安装Mysql。这一步有时候很慢,可以按Ctrl+C中断,然后重新执行再试一下 ``` yum -y install mysql-community-server ``` #### 若报下面这个错误 ``` Failing package is: mysql-community-libs-5.7.44-1.el7.x86_64 GPG Keys are configured as: file:///etc/pki/rpm-gpg/RPM-GPG-KEY-mysql ``` #### 原因是MySQL的GPG升级了,需要重新导入,执行下面的命令即可 ``` rpm --import https://repo.mysql.com/RPM-GPG-KEY-mysql-2022 ``` #### 7、安装完成后执行 `rpm -qa|grep mysql` 检查是否已安装有mysql ![](/images/20200112105829475.png) #### 8、启动mysql服务 ``` systemctl start mysqld ``` 查看服务状态 `systemctl status mysqld`,看到active (running)表示运行中 ![](/images/20200112110201407.png) #### 9、设置开机启动 ``` systemctl enable mysqld ``` ``` systemctl daemon-reload ``` ![](/images/20200112110531062.png) #### 10、修改root登录密码 > MySQL 5.7 启动后,在 /var/log/mysqld.log 文件中给 root 生成了一个临时密码 查看临时密码:`cat vi /var/log/mysqld.log` ,后面部分就是临时密码 > A temporary password is generated for root@localhost: 2k=Xv!u14sK; ![](/images/20200112111350919.png) #### 执行:`mysql -u root -p` 输入临时密码按回车进入mysql ![](/images/20200112111835822.png) > MySQL 5.7 默认安装了密码安全检查插件(validate_password),默认密码检查策略要求密码必须包含:大小写字母、数字和特殊符号,并且长度不能少于 8 位。 #### 修改密码,修改成功后 执行:exit 退出mysql ``` ALTER USER 'root'@'localhost' IDENTIFIED BY 'Frank#123456'; ``` ![](/images/20200112113710153.png) #### 11、配置默认编码为utf8 #### 编辑配置文件:`vi /etc/my.cnf`,新增如下两行配置编码信息 ``` MySQL 默认为 latin1, 一般修改为 UTF-8 修改/etc/my.cnf配置文件,在myslqd下添加如下键值对 character_set_server=utf8 init_connect='SET NAMES utf8' ``` ![](/images/20200112114144707.png) 可以设置一下sql_mode,把only_full_group_by去掉。这样在用group by分组时查询就可以查出其他字段了 #### 参考配置 ``` [mysqld] user=mysql character-set-server=utf8 default-time-zone=+08:00 default_authentication_plugin=mysql_native_password secure_file_priv=/var/lib/mysql expire_logs_days=7 sql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION max_connections=1000 [client] default-character-set=utf8 [mysql] default-character-set=utf8 ``` #### 12、修改完重启服务使配置生效 重启mysql服务: `systemctl restart mysqld` 再次进入mysql: `mysql -u root -p` 查看字符集:`SHOW VARIABLES LIKE 'character%';` ![](/images/20200112114858641.png) #### 13、配置远程登录 > MySQL 默认只允许 root 帐户在本机登录,如果要在其它机器上连接 MySQL,必须修改 root 允许远程连接,或者添加一个允许远程连接的帐户 因为默认root用户没有设置允许远程连接,所以root用户是连不上的 ![](/images/20200112120701959.png) #### 方式一、修改 root 允许远程连接 进入mysql执行依次下面三行命令即可,%表示所有IP地址 ``` mysql>use mysql; msyql>update user set user.Host='%' where user.User='root'; mysql>flush privileges; ``` ![](/images/20211124035904925.png) #### 方式二、添加一个账号为admin,密码为Frank#123456 的用户 ``` GRANT ALL PRIVILEGES ON *.* TO 'admin'@'%' IDENTIFIED BY 'Frank#123456' WITH GRANT OPTION; ``` #### 并且防火墙开放3306端口 ``` firewall-cmd --zone=public --add-port=3306/tcp --permanent ``` ``` firewall-cmd --reload ``` ![](/images/20200112115928136.png) #### 14、测试连接 ![](/images/20200112120710859.png) #### OK!到此CentOS7 安装 MySQL5.7完成!!!
博客分类
源码解析 (1)
多线程 (5)
Java (10)
Linux (8)
Docker (9)
SpringBoot (14)
微服务 (1)
Redis (15)
MySQL (7)
VMware (3)
Nginx (15)
MyBatis (2)
RabbitMQ (1)
Git (7)
工具类 (12)
前端 (3)
友情链接
layui
© 2020-2025 www.chenhuazhan.com All Rights Reserved 备案号:
桂ICP备17004487号-1
粤公网安备44030002005146