centOS8 安装MySQL8(亲测)

若是你还在寻寻觅觅CentOS上安装MySQL的教程而不得,那看到这里就不用转走了。
说实在的,我今天搞了一天了。node

文章目录

下载MySQL

MySQL8.0.21 各版本下载地址:点这里mysql

在这里插入图片描述

这个下拉框一拉,Fedora、Unbuntu什么的都有,反正就是找不到centOS是吧,而后网上就是一堆人说centOS默认支持mariaDB,反正个人Centos是没有。web

搞这个:
在这里插入图片描述sql

能够直接在Linux系统下下载。数据库

在这里插入图片描述


开始配置

先看看你的系统有没有MariaDB:svg

rpm -qa | grep mariadb

有的话会给你一个版本的回应,没有的话就没有了、spa

要是运气好,真的有,那就卸掉呗:rpm -e 版本号 --nodepscode


建一个目录,叫mysql,放哪里你记得住就好。
而后把MySQL下载好的安装包拖到你的mysql目录下,能够用代码拖进去,也能够去文件管理器里面拖。server

解压:tar -xvf mysql-8.0.21-1.el7.x86_64.rpm-bundle.tar
别人的图,意思是相通的
在这里插入图片描述xml


经过 rpm -ivh mysql-community-common-8.0.21-1.el7.x86_64.rpm --nodeps --force 命令安装 common

在这里插入图片描述

经过 rpm -ivh mysql-community-libs-8.0.11-1.el7.x86_64.rpm --nodeps --force 命令安装 libs

在这里插入图片描述

经过 rpm -ivh mysql-community-client-8.0.11-1.el7.x86_64.rpm --nodeps --force 命令安装 client

在这里插入图片描述

经过 rpm -ivh mysql-community-server-8.0.11-1.el7.x86_64.rpm --nodeps --force 命令安装 server

在这里插入图片描述

经过 rpm -qa | grep mysql 命令查看 mysql 的安装包

在这里插入图片描述


经过如下命令,完成对 mysql 数据库的初始化和相关配置

mysqld --initialize;
chown mysql:mysql /var/lib/mysql -R;
systemctl start mysqld.service;
systemctl enable mysqld;

在这里插入图片描述


经过 cat /var/log/mysqld.log | grep password 命令查看数据库的密码

在这里插入图片描述


经过 mysql -uroot -p 敲回车键进入数据库登录界面

输入刚刚查到的密码,进行数据库的登录,复制粘贴就行,MySQL 的登录密码也是不显示的

在这里插入图片描述

经过 ALTER USER ‘root’@‘localhost’ IDENTIFIED WITH mysql_native_password BY ‘root’; 命令来修改密码
这下密码改为了 root

经过 exit; 命令退出 MySQL,而后经过新密码再次登录


经过如下命令,进行远程访问的受权

在这里插入图片描述


添加远程登陆用户

默认只容许root账户在本地登陆,若是要在其它机器上链接mysql,必须修改root容许远程链接,或者添加一个容许远程链接的账户。

修改root用户远程访问权限:

选择 mysql 数据库:use mysql;

在 mysql 数据库的 user 表中查看当前 root 用户的相关信息:

select host, user from user;

查看表格中 root 用户的 host,默认应该显示的 localhost,只支持本地访问,不容许远程访问。

受权 root 用户的全部权限并设置远程访问

GRANT ALL ON *.* TO 'root'@'%';

若是报错:ERROR 1410 (42000): You are not allowed to create a user with GRANT

update user set host='%' where user ='root';

而后使用下面命令使修改生效:

flush privileges;

若有须要再执行以前受权报错的命令便可成功,最后一样使用flush privileges;命令刷新。


sqlyog连接时出现2058异常

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'password';

其中password为本身修改的密码。而后SQLyog中从新链接,则可链接成功,OK。

若是报错:ERROR 1396 (HY000): Operation ALTER USER failed for ‘root’@'localhost’则使用下面命令:

ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY 'password';