CentOS 8安装MySQL8记录

Windows 10安装MySQL8记录

切记在安装之前,需要卸载之前安装的MySQL 5版本。
否则安装失败:
在这里插入图片描述
去官网下载安装包
下载地址:https://dev.mysql.com/downloads/mysql/
忽略账号注册或者登陆,直接下载得到zip包,解压缩。

D:\mysql-8.0.23-winx64
新建
my.ini内容:

[mysqld]
# 设置3306端口
port=3306
# 设置mysql的安装目录
basedir=D:\\mysql-8.0.23-winx64
# 设置mysql数据库的数据的存放目录
datadir=D:\\mysql-8.0.23-winx64\\data
# 允许最大连接数
max_connections=200
# 允许连接失败的次数。这是为了防止有人从该主机试图攻击数据库系统
max_connect_errors=10
# 服务端使用的字符集默认为UTF8
character-set-server=utf8
# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB
[mysql]
# 设置mysql客户端默认字符集
default-character-set=utf8
[client]
# 设置mysql客户端连接服务端时默认使用的端口
port=3306
default-character-set=utf8

配置系统环境

MYSQL_HOME

在path中添加%MYSQL_HOME%\bin

5:以管理员的身份打开cmd窗口跳转路径到E:\mysql-8.0.11-winx64\bin

初始化命令mysqld --initialize --user=mysql --console
输入mysqld -install进行服务的添加

输入net start mysql启动服务

输入mysql -u root -p进行登录数据库,这时提示需要密码,然后就是用你上面的密码登录
修改密码语句:ALTER USER root@localhost IDENTIFIED BY ‘123456’; 修改密码为:123456

在这里插入图片描述

在这里插入图片描述

CentOS 8安装MySQL8记录

首先,查看是否已经安装MySQL:
yum list installed mysql
或者
rpm -qa | grep mysql

若已经安装,可考虑卸载,卸载前关闭mysql服务,然后使用命令:
rpm -ev --nodeps mysql-errmsg-8.0.21-1.module_el8.2.0+493+63b41e36.x86_64 mysql-8.0.21-1.module_el8.2.0+493+63b41e36.x86_64 mysql-server-8.0.21-1.module_el8.2.0+493+63b41e36.x86_64 mysql80-community-release-el8-1.noarch mysql-common-8.0.21-1.module_el8.2.0+493+63b41e36.x86_64

验证卸载:rpm -qa | grep mysql

安装Yum Repository:
wget https://repo.mysql.com//mysql80-community-release-el8-1.noarch.rpm

使用rpm来安装MySQL:
rpm -ivh mysql80-community-release-el8-1.noarch.rpm

使用yum安装mysql服务:
yum install mysql-server

设置开机启动:

systemctl enable mysqld.service
Created symlink /etc/systemd/system/multi-user.target.wants/mysqld.service → /usr/lib/systemd/system/mysqld.service.
systemctl enable [email protected]
Created symlink /etc/systemd/system/multi-user.target.wants/[email protected] → /usr/lib/systemd/system/[email protected].

问题:
mysqld.service和[email protected]有何区别?

启动服务:
systemctl start mysqld.service

查看是否启动MySQL服务
ps -ef|grep mysql

检查是否已经设置为开机启动MySQL服务:
systemctl list-unit-files|grep mysqld

如果没有执行:systemctl enable [email protected],输出将是:

[root@centos170 ~]# systemctl list-unit-files|grep mysqld
mysqld.service                              enabled
[email protected]                             disabled

输入mysql,即可进入命令行,查询版本:
select version();
得到:8.0.21

查看所有默认的数据库:
show databases;
输出:

+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |
| sys                |
+--------------------+

注:大多数语句要输入结束符分号;

上面提到,直接使用mysql可以进入命令行客户端。另外,输入mysql -uroot -p直接回车都能进入mysql客户端,即root用户是没有密码的!!!
在这里插入图片描述
但是,本地使用可视化客户端工具DataGrip连接,方便后续的数据查询与展示,却连接失败,报错信息:SQLException: null, message from server: "Host 'XXX' is not allowed to connect
参考
这个异常是数据库只允许localhost或127.0.0.1访问,不允许远程访问。

切换DB:use mysql
查看用户和对应的host信息:

select user,host from user;
+------------------+-----------+
| user             | host      |
+------------------+-----------+
| mysql.infoschema | localhost |
| mysql.session    | localhost |
| mysql.sys        | localhost |
| root             | localhost |
+------------------+-----------+

可知root用户只允许host为localhost访问,故而需要更新:update user set host='%' where user='root';
生效:FLUSH PRIVILEGES;

必须输入User用户名,不能为空
在这里插入图片描述
CentOS 8不需要输入用户名密码即可连接输入mysql,或者输入root和空密码。

https://www.cnblogs.com/weixiaofantasy/p/12667912.html

密码错误:
javax.net.ssl.SSLHandshakeException: Received fatal alert: protocol_version.
本地连接必须要输入用户名和密码,在那台机器上连接进入mysql,不需要!

设置用户名密码:

use mysql;
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '123456';
FLUSH PRIVILEGES;

随机密码生成

在MySQL 8.04前,执行:SET PASSWORD=PASSWORD(‘[新密码]’);但是MySQL8.0.4开始,这样默认是不行的。因为之前,MySQL的密码认证插件是“mysql_native_password”,而现在使用的是“caching_sha2_password”。

对于CentOS8,从默认源安装mysql8没有密码,可以直接mysql进入使用

mysql -uroot -pxxx
直接运行报错:
mysql: [Warning] Using a password on the command line interface can be insecure.
ERROR 1045 (28000): Access denied for user ‘root’@‘localhost’ (using password: YES)
mysql -uroot -p
然后输入密码才行;

猜你喜欢

转载自blog.csdn.net/lonelymanontheway/article/details/113352925