我的编程空间,编程开发者的网络收藏夹
学习永远不晚

Linux中安装mysql8,很详细

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

Linux中安装mysql8,很详细

下载地址:

https://dev.mysql.com/downloads/

在这里插入图片描述

选择Linux
在这里插入图片描述
在这里插入图片描述

1、先查看mysql是否存在,命令如下:

rpm -qa|grep -i mysql

如果使用这个命令之后没有出现任何内容,表示没有安装过mysql,如果有出现,则删除。

2、如果存在,那么停止mysql,删除所有的服务

在这里插入图片描述
使用如下命令:

find / -name mysql

删除出现的所有文件(如图)

1、解压MySQL压缩包

tar xvJf “你的安装包名称”,我这里是

tar xvJf mysql-8.0.31-linux-glibc2.12-x86_64.tar.xz

2、重命名解压后的MySQL

觉得解压之后的MySQL文件夹名称太长了,可以 mv “原文件名称” “新文件名称”,重命名一下,注意如果是在当前文件中重命名,新文件名中不能包含斜杆“/”,这是我的

mv mysql-8.0.31-linux-glibc2.12-x86_64 mysql-8.0.31

3、进入MySQL根目录,创建data文件夹

在这里插入图片描述

进入根目录

cd mysql-8.0.31/

创建data文件

mkdir data

这个我没发现有什么用,但很多教程都这么做,我这里也创建一下。

1、创建mysql组

groupadd mysql

2、创建mysql用户

useradd -g mysql mysql

在这里插入图片描述

出现这样的提示表示已经创建过mysql组和用户了。

3、将安装的MySQL权限给mysql用户

命令,chown -R “mysql组名”.“mysql用户名” “mysql安装根目录”

chown -R mysql.mysql /usr/MYSQL/mysql-8.0.31

在这里插入图片描述

在初始化之前提一嘴,Linux中的MySQL默认是区分表明大小写的,如果你是安装的也是MySQL8,那么不区分大小需要在数据库初始化时设置,不然初始化后,在配置文件在设置重启时是会报错的。

进入MySQL的bin目录进行初始化

./mysqld --user=mysql --basedir=/usr/MYSQL/mysql-8.0.31 --datadir=/usr/MYSQL/mysql-8.0.31/data --lower-case-table-names=1 --initialize

在这里插入图片描述

–lower-case-table-names=1 即设置不区分表明大小写,最后面的 dwW3

初次进入时配置是空的,进入命令

vim /etc/my.cnf

在这里插入图片描述

[mysqld]port=3306basedir=/usr/MYSQL/mysql-8.0.31/  # MySQL根目录datadir=/usr/MYSQL/mysql-8.0.31/data/  # MySQL的data目录socket=/tmp/mysql.sockcharacter-set-server=UTF8MB4symbolic-links=0#解决“java.sql.SQLException: Expression #1 of ORDER BY clause is not in SELECT list,references column”sql_mode='STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION'

保存退出

进入MySQL根目录,直接复制粘贴命令即可。

cp -a ./support-files/mysql.server /etc/init.d/mysql

在这里插入图片描述

这里授权和添加服务都是在MySQL的根目录中操作。

1、授权

chmod +x /etc/init.d/mysql

在这里插入图片描述

2、添加服务

chkconfig --add mysql

在这里插入图片描述

九、启动MySQL

1、启动MySQL命令

service mysql start

2、查看MySQL状态

service mysql status

在这里插入图片描述

3、踩坑(2023-4-12更新,成功启动的可以不看)

如果启动时报如下错
在这里插入图片描述

一个原因是上面新建的data目录没有权限,使用如下命令加上:

chmod -R 755 /usr/local/mysql/mysql-8.0.32/data

将data目录改为你的data目录,然后再使用
在这里插入图片描述

然后再启动mysql
在这里插入图片描述

可以看到报错比上面少了,接下来看看上面报错的日志,使用命令:

cat /usr/local/mysql/mysql-8.0.32/data/iZ7xvbz75ed3prrdah1kceZ.err

在这里插入图片描述

前面在初始化时设置了表明大小写不敏感,这里要在mysql的配置文件中显示设置一下
在这里插入图片描述

保存退出,然后重启mysql
在这里插入图片描述

成功启动。

1、添加服务

命令: ln -s “你的MySQL根目录/bin/mysql” /usr/bin ,这一步是为了能在任何地方通过用户名和密码登录MySQL,这是我的

ln -s /usr/MYSQL/mysql-8.0.31/bin/mysql /usr/bin

在这里插入图片描述

2、踩坑(2023-4-12更新,成功登录mysql可以不看)

直到上一步都没有出错,在登录mysql时报如下错:
在这里插入图片描述

可能是挂载的路径错了,到挂载目录查看,命令如下:

cd /usr/bin

可以看到mysql服务是红色的,并且一直在闪,正常的应该是绿色的。
在这里插入图片描述
我当前的mysql根目录是8.0.32,添加的时候写成了8.0.31,怪不得会报错。

解决办法:删除当前mysql的服务,重新添加。

先删除,命令如下:

rm -rf /usr/bin/mysql

重新添加:

ln -s /usr/local/mysql/mysql-8.0.32/bin/mysql /usr/bin

可以看到mysql服务添加成功,可以登录mysql了。
在这里插入图片描述

mysql -uroot -p

输入的密码是不显示的

在这里插入图片描述

2、切换到mysql数据库

切换mysql命令

use mysql

查询用户表命令

select Host, User from user;

在这里插入图片描述
可以看到允许访问root的host有哪些,%表示所有,这里只有localhost,修改密码不成功可以看一下root对应的host的值。

3、修改密码

修改密码的命令为:

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

修改之后需要刷新,使密码生效

flush privileges;

4、踩坑,修改成功可以不看

(1)、设置简单密码报错

初次修改密码时,如果设置过于简单的密码可能会报错,可以使用命令

show variables like 'validate_password%';

validate_password_policy 的默认值为 1 或者 MEDIUM,表示密码必须符合长度,且必须含有数字,小写或大写字母,特殊字符。
validate_password_length 的默认值为 8,表示密码长度为8。

注意查看密码安全策略的这步,只有初始密码登录MySQL才能查到结果,修改密码再次使用此命令查询没有结果。

设置简单密码策略

set global validate_password_policy=0;

设置密码长度

set global validate_password_length=6;

这样设置之后就可以将密码修改为“123456”了。

(2)修改密码报错

有些朋友修改密码时会报错,原因可能就在这里,假如你修改密码的命令为:

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

那么是没有问题的,如果你修改密码的命令为:

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

那么可能就会报错。

解决办法,使用如下命令:

update user set Host='%' where User='root';

将root用户对应的Host改为“%”再重新修改密码就行了。

记得修改密码后用命令

flush privileges;

刷新一下密码,不然修改的密码是不生效的。

在这里插入图片描述

来源地址:https://blog.csdn.net/studio_1/article/details/128345934

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

Linux中安装mysql8,很详细

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

Linux中安装mysql8,很详细

Linux中安装mysql8,很详细 一、先前往官网下载mysql8二、删除Linux中的mysql(如果有的话),上传安装包1、先查看mysql是否存在,命令如下:2、如果存在,那么停止mysql,删除所有的服务 三、解压安装
2023-08-16

MySQL8 详细安装步骤 【附安装包】

一、准备安装包 方式1 云盘 下载 MySQL8 百度云盘下载地址(地址永久有效): 链接:https://pan.baidu.com/s/1s-BH7uizzuwr8P_QAJzH4w 提取码:e2xf 方式2 官网下载 MySQL官网
2023-08-16

CentOS7安装MySQL8(超级详细-无坑)

文章目录 前言一、卸载MariaDB1.1 查看版本:1.2 卸载1.3 检查是否卸载干净: 二、安装MySQL2.1 下载资源包2.1.1 官网下载2.1.2 wget下载 2.2 解压2.3 重命名2.4 添加PATH
2023-08-17

Linux安装MySQL(超详细,附图安装)

一、安装MySQL服务 1.查看是否已经安装了MySQL rpm -qa | grep mysql 如果什么都没有,就是还没有装过MySQL 2.下载MySQL安装包 wget -i -c http://dev.mysql.com/get
2023-08-22

Linux 安装 MySQL 详细教程

如何在 Linux 主机一步一步安装 MySQL 数据库?安装Linux服务器可选择:Centos,Redhat,Oracle Linux!

Linux 安装 nginx 详细教程

文章目录 Linux 安装 nginx 详细步骤①安装依赖包②下载并解压安装包③安装 nginx④启动 nginx 服务⑤nginx 反向代理 提示:以下是本篇文章正文内容,Linux 系列学习将会持续更新 Lin
2023-08-23

Linux安装Docker详细教程

目录介绍安装条件卸载旧版本安装方法常用命令卸载docker Compose编排安装卸载docker compose介绍 Docker利用linux核心中的javascript资源分脱机制,例如cgroups,以及Linux核心名字空间(na
2022-07-06

Linux-安装MySQL(详细教程)

Linux-安装MySQL 前言一、概述二、下载三、安装四、卸载五、常用设置六、可能遇到的问题 前言 本文的主要内容是在 Linux 上安装 MySQL,以下内容是源于 B站 - MySQL数据库入门到精通 整理而来。 一、
2023-08-17

Linux安装Redis详细教程

Redis支持数据的持久化,可以将内存中的数据保存在磁盘中,重启的时候可以再次加载进行使用。Redis不仅仅支持简单的Key-value类型的数据,同时还提供List,Set,Zset,Hash等数据结构的存储。Redis支持数据的备份,即
RedisLinux2024-11-30

linux安装JDK1.8详细步骤

linux安装JDK1.8详细步骤 1.官网下载jdk1.8压缩包 进入官网:https://www.oracle.com/java/technologies/downloads/ 2.将下载好的压缩包通过xftp上传至linux服务器(我
2023-08-19

编程热搜

目录