登录  /  注册
博主信息
博文 291
粉丝 0
评论 0
访问量 432304
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
CentOS7安装MYSQL8.X详细教程
原创
886人浏览过

镜像下载、域名解析、时间同步请点击 阿里云开源镜像站

1-首先查看系统是否存在mysql,无则不返回

  1. # rpm -qa|grep mysql

2-安装wget

  1. # yum -y install wget

3-抓取mariadb并删除包,无则不返回

  1. # rpm -qa|grep mariadb

4-删除mariadb-libs-5.5.68-1.el7.x86_64

  1. # rpm -e --nodeps mariadb-libs-5.5.68-1.el7.x86_64

5-配置阿里云的yum

  1. # wget http://mirrors.aliyun.com/repo/Centos-7.repo

6-配置成功后需要重新加载yum

  1. # yum clean all --清除yum
  2. # yum makecache --清除缓存
  3. # yum repolist --查看仓储包

7-进入tmp文件夹,并清空

  1. # cd /tmp/
  2. # rm -rf *

8-通过wget下载mysql8.0包(如果包不是最新的则需要注意在安装MYSQL前进行Mysql的GPG升级)

获取最新的包打开MYSQL官网wget https://dev.mysql.com/get/Downloads/

阿里云下载地址:https://mirrors.aliyun.com/mysql/

file

file

然后拼接在[wget https://dev.mysql.com/get/Downloads/]后面

  1. wget https://dev.mysql.com/get/Downloads/mysql-community-server-8.0.27-1.el7.x86_64.rpm

本教程提供的yum源包

  1. # wget https://dev.mysql.com/get/mysql80-community-release-el7-3.noarch.rpm

9-配置mysql的yum源

  1. # sudo rpm -Uvh mysql80-community-release-el7-3.noarch.rpm

执行成功后会在/etc/yum.repos.d/目录下生成两个repo文件mysql-community.repo 及 mysql-community-source.repo

10-进入yum.repos.d查看

  1. # cd /etc/yum.repos.d/
  2. # ls -l

11-开始安装Mysql

  1. # yum install -y mysql-community-server

注意:上面提到过,通过wget获取的MYSQL包不是最新的前提下有可能报错,这是因为MYSQL的GPG升级了,需要重新获取

如果无这个报错可忽略跳过本步骤

  1. 报错信息如下:
  2. Failing package is: mysql-community-client-8.0.28-1.el7.x86_64
  3. GPG Keys are configured as: file:///etc/pki/rpm-gpg/RPM-GPG-KEY-mysql

file

12-这个时候需要重执行(2022则为今年的年份),执行完GPG升级,需要重新安装

  1. # rpm --import https://repo.mysql.com/RPM-GPG-KEY-mysql-2022
  2. # yum install -y mysql-community-server

13-安装完成

file

打开my.cnf文件增加以下 [skip-name-resolve] 语句到末尾(这一步可不做设置)

  1. # vi /etc/my.cnf
  2. #跳过名称解析,提高数据库的连接速度
  3. # skip-name-resolve

14-启动MYSQL服务,并查看状态,查看端口

  1. # systemctl start mysqld --启动mysql服务
  2. # systemctl status mysqld --查看mysql服务状态
  3. # netstat -nlpt | grep mysqld --查看端口

file

15-设置开机启动

  1. # systemctl enable mysqld
  2. # systemctl daemon-reload

16-抓取mysql临时密码

  1. # cat /var/log/mysqld.log | grep password

file

17-登录进mysql

mysql -u<账号> -p<密码> -P<端口号,默认3306> -h<mysqld服务器IP,如果比指定"-h" 则表示本地登陆>

  1. mysql -uroot -p

18-更改密码(必须是强密码),并刷新(mysql结尾一定要加英文分号;)

  1. mysql> alter user 'root'@'localhost' identified by 'Root123..'; --修改密码(强密码)
  2. mysql> flush privileges; --刷新,立即生效
  3. mysql> select user,host from mysql.user; --查看数据库中账号信息

弱密码会报错,如图

file

做这一步前提:必须是修改了默认的随机密码(执行步骤18)
关掉强密码,修改密码长度最短为6位数,修改密码为弱密码

  1. mysql> set global validate_password.policy=0; --关掉强密码认证
  2. mysql> set global validate_password.length=6; --密码长度最短为6位数
  3. mysql> alter user 'root'@'localhost' identified by '123456'; --修改密码(弱密码)

file

19-开放3306端口,并且重启防火墙,然后查看端口,开放端口是为了外网能通过Navicat Premium等其他工具访问

  1. # firewall-cmd --zone=public --add-port=3306/tcp --permanent --开放3306端口
  2. # firewall-cmd --reload --重启防火墙
  3. # firewall-cmd --list-ports --查看开放的端口

file

做完如上部署,重新登录进到数据库,修改user表中的Host:

  1. # mysql -uroot -p123456 --登录数据库
  2. mysql> show databases; --查数据来库
  3. mysql> use mysql; --使用数据库
  4. mysql> select Host, User from user; --查询表
  5. mysql> update user set Host='%' where User='root'; --修改User表内root用户的Host为%
  6. mysql> flush privileges; --刷新

file
file
file

MYSQL知识点

如果创建一个用户,给予单个库权限

  1. mysql> create database test_data; --创建一个数据库
  2. mysql> create user admin@'%' identified by 'Admin@123..'; --创建一个新的用户 admin 密码 Admin@123..
  3. mysql> grant all privileges on test_data.* to admin@'%' with grant option; --授权,给test_data库的所有权限
  4. mysql> flush privileges; --刷新

MySQL5.6版本和8.0版本的的用户授权方式不同

MySQL5.6版本的用户授权

  1. mysql> create user test identified by '123456';
  2. mysql> grant all privileges on *.* to 'admin'@'%'identified by '123456' with grant option;
  3. mysql> flush privileges ;

MySQL8.0版本的用户授权

  1. mysql> create user test@'%' identified by '123456';
  2. mysql> grant all privileges on *.* to admin@'%' with grant option;
  3. mysql> flush privileges;

本文转自:https://www.cnblogs.com/LaoPaoEr/p/16023644.html

本博文版权归博主所有,转载请注明地址!如有侵权、违法,请联系admin@php.cn举报处理!
全部评论 文明上网理性发言,请遵守新闻评论服务协议
0条评论
作者最新博文
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号

  • 登录PHP中文网,和优秀的人一起学习!
    全站2000+教程免费学