CentOS 7 安装 MySQL 8_cenost 装mysql8.0-程序员宅基地

技术标签: Linux  mysql8 配置  mysql  linux 安装mysql  centos 安装 mysql  mysql8 安装教程  

1.下载

打开 [MySQL 官方下载地址](https://downloads.mysql.com/archives/community/)

选择我们要安装的版本  32位系统选择第一个(蓝色框内)  64位系统选择第二个(绿色框内)

在这里插入图片描述

2.卸载 CentOS 7 自带的 mariadb

mariadb 是 MySQL 的一个分支,此数据库会和我们安装的 MySQL 冲突。
查看 mariadb 安装的 rpm package

rpm -qa | grep mariadb

卸载

rpm -e mariadb-libs-5.5.37-1.el7_0.x86_64

如果报错 需要进行强制删除

rpm -e --nodeps mariadb-libs-5.5.37-1.el7_0.x86_64

3.解压


将我们下载的 MySQL 放到 /usr/ 目录下进行解压

xz -d mysql-8.0.13-linux-glibc2.12-x86_64.tar.xz
tar -xvf mysql-8.0.13-linux-glibc2.12-x86_64.tar

将解压的文件 放到 /local/ 下 并命名为 mysql

mv mysql-8.0.13-linux-glibc2.12-x86_64 /usr/local/mysql



了解内容
创建 tar.xz 文件命令:

tar cvf xxx.tar xxx/  得到 xxx.tar文件,然后  xz -z xxx.tar  将 xxx.tar 压缩成为 xxx.tar.xz

解压 tar.xz 文件命令:

xz -d xxx.tar.xz 将 xxx.tar.xz 解压成 xxx.tar 然后,再用 tar xvf xxx.tar 解压。

4.增加 MySQL 用户和组

创建用户组

groupadd mysql

创建用户名和密码

useradd -g mysql mysql
passwd mysql

5.添加配置文件

由于 MySQL 8 是不自带配置文件的 所以我们要自己创建一个 my.cnf 配置文件

vim /etc/my.cnf

将以下内容粘贴到 my.cnf 中

[client]
port = 3306
socket = /tmp/mysql.sock
default-character-set=utf8
 
###############################基础设置#####################################
[mysqld] 
#可以免密码登录
#skip-grant-tables
 
#Mysql服务的唯一编号 每个mysql服务Id需唯一
server-id = 1
 
#服务端口号 默认3306
port = 3306
 
default_storage_engine=InnoDB
 
skip-name-resolve
 
#mysql安装根目录
basedir = /usr/local/mysql
 
#mysql数据文件所在位置,
datadir =/usr/local/mysql/data
 
#临时目录 比如load data infile会用到
tmpdir  = /tmp
 
#设置socke文件所在目录
socket  = /tmp/mysql.sock
 
#事务隔离级别,默认为可重复读,mysql默认可重复读级别(此级别下可能参数很多间隙锁,影响性能)
transaction_isolation = READ-COMMITTED
 
#数据库默认字符集,主流字符集支持一些特殊表情符号(特殊表情符占用4个字节)
character-set-server = utf8mb4
 
#数据库字符集对应一些排序等规则,注意要和character-set-server对应
collation-server = utf8mb4_general_ci
 
#设置client连接mysql时的字符集,防止乱码
#init_connect=‘SET NAMES utf8mb4‘

sql-mode="STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION"

############################日志设置##########################################
 
#数据库错误日志文件
log_error = error.log

6.初始化 MySQL

/usr/local/mysql/bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql/ --datadir=/usr/local/mysql/data/

建议复制粘贴执行命令
如果此处出错

/usr/local/mysql/bin/mysqld: error while loading shared libraries: libaio.so.1: cannot open shared object file: No such file or directory

执行以下命令

yum install -y libaio

7.启动 MySQL

需要在 /usr/local/mysql 目录下执行

./support-files/mysql.server start

此处可能会报错
原因可能是你的配置文件 socket = /tmp/mysql.sock 指定的目录不存在 你的 mysql 用户没有对应的权限

例如:
你的配置文件路径为 socket = /tmp/mysql/mysql.sock
需要先创建对应目录(已有则不需要创建) mkdir /tem/mysql/
为 mysql 用户进行授权 chown -R mysql:mysql /tmp/mysql

8.设置 root 密码

将配置文件中下面的注释打开

#可以免密码登录
skip-grant-tables

重启 MySQL 服务

service mysqld restart

进入 MySQL bin 目录

cd /usr/local/mysql/bin/

登录 MySQL

./mysql -uroot -p

直接按回车登录 然后选择数据库(注意 以下命令是在 MySQL 下执行的)

use mysql

修改密码

ALTER USER 'root' IDENTIFIED BY '你的密码';

为了远程功能也能正常连接 还需要做如下操作

ALTER USER 'root' IDENTIFIED WITH mysql_native_password BY '你的密码';

9.允许远程访问

允许远程连接执行以下命令

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

使标题8 和标题9 修改立即生效需要执行

flush privileges;

开放 3306 端口 (以下命令是 Linux 命令)

firewall-cmd --zone=public --add-port=3306/tcp --permanent

重启防火墙

firewall-cmd --reload

10.添加 MySQL 服务 和 全局环境变量

添加服务执行以下命令

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

查看服务是否添加成功

chkconfig --list mysqld

添加全局环境变量执行以下命令

vim /etc/profile

在文件最后添加如下参数

MYSQL_HOME=/usr/local/mysql

PATH=$MYSQL_HOME/bin:$PATH
export MYSQL_HOME  PATH

重启 Linux

reboot
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/t55312153/article/details/90602074

智能推荐

C语言学习(十)C语言中的小数_c语言小数的定义变量类型-程序员宅基地

文章浏览阅读6.8k次,点赞2次,收藏18次。C语言学习(十)C语言中的小数小数的表示方式小数分为整数部分和小数部分,他们之间用点号.分隔,如0.0、7.5、4.098、0.27、-987.333等都是合法小数,这是最常见的小数形式,我们称为十进制形式。此外,小时也可以采用指数形式,如3.2x103、0.0345x106、100.2323x10-6等。C语言同时支持以上两种小数形式。C语言中小数的指数形式为:aEn 或 aen其中a为尾数部分,是一个十进制的数字。n为指数部分,是一个十进制整数。e或者E是一个固定字符,用于分隔尾数和指数_c语言小数的定义变量类型

89c52LED点阵实例(复习自用)-程序员宅基地

文章浏览阅读496次,点赞20次,收藏3次。今天老板找我,我说我很忙,后来老板过来的时候发现我在做这个,让我走人,可恶。

Discord注册教程:Discord刚注册就被封怎么办?附申诉教程!_discord注册输错年龄被限制-程序员宅基地

文章浏览阅读1k次,点赞27次,收藏13次。在本篇文章中,我们探讨了Discord注册的全过程,以及如何有效避免因常见问题而导致Discord注册就被禁用的情况,同时介绍了使用AdsPower指纹浏览器避免账号被封的策略。无论您是在担心“Discord会封号吗”还是已经面临Discord被封的挑战,都可以考虑使用AdsPower这样的工具来保护和管理您的账户。当然,及时且合理地进行Discord申诉,依然有机会恢复您的账号,希望以上内容对大家有所帮助。_discord注册输错年龄被限制

三菱FX3U与欧姆龙E5CC温控器通讯实战程序_三菱plc触摸屏温控器通讯-程序员宅基地

文章浏览阅读723次,点赞11次,收藏8次。结论: 本文介绍了一种基于三菱FX3U PLC与欧姆龙E5CC温控器的通讯实战程序,通过昆仑通态触摸屏实现对温度的设定和读取实际温度等功能。而在实际应用中,与PLC的通讯成为了温控器的一个重要功能,通过PLC可以对温控器进行远程控制、设定温度值、读取实际温度等操作,大大提高了生产效率和自动化程度。功能:通过昆仑通态触摸屏,三菱FX3U 485BD板,实现对欧姆龙E5CC温控器 设定温度值,读取实际温度,设定探头类型,设定报警值,设定报警类型,报警上下限功能。三菱FX3U与欧姆龙E5CC温控器通讯实战程序。_三菱plc触摸屏温控器通讯

如何使用x86汇编对硬盘进行读写_x86汇编读取硬盘dma-程序员宅基地

文章浏览阅读9.7k次,点赞12次,收藏16次。阅读李忠的《x86汇编语言》看到的一段代码,写入博客,算是个人的笔记吧。_x86汇编读取硬盘dma

Unable To Locate Package Software-properties-common-程序员宅基地

文章浏览阅读4.6k次。https://blog.csdn.net/qq_27435059/article/details/80508553_unable to locate package software-properties-common

随便推点

arm-none-eabi交叉编译工具常用的一些指令_arm-none-eabi-gcc objdump-程序员宅基地

文章浏览阅读1.7w次,点赞3次,收藏22次。假如目前有三个文件a.c、b.c、ab.lds:1.arm-none-eabi-gccarm-none-eabi-gcc --help 查看帮助信息。arm-none-eabi-gcc -c a.c 生成a.o文件。arm-none-eabi-gcc -g -c a.c 生成a.o文件,-g使得如果反汇编可对应C语言显示。arm-none-eabi-gcc -c_arm-none-eabi-gcc objdump

numpy数据文件保存和加载_写入numpy数组到gz中-程序员宅基地

文章浏览阅读353次。要点概括:1.保存为二进制文件(.npy/.npz) numpy.save numpy.savez numpy.savez_compressed 2.保存到文本文件 numpy.savetxt numpy.loadtxt 1. numpy.save(file, arr, allow_pickle=True, fix_imports=True)file:文件名/文..._写入numpy数组到gz中

R实用绘图--火山图_火山图-logfdr-程序员宅基地

文章浏览阅读261次,点赞5次,收藏2次。R实用绘图系列主要是带领大家绘制一些实用、好看而又不太复杂的科研常用图形,主打一个实用,该系列会持续更新,有需要的小伙伴赶紧关注起来吧。_火山图-logfdr

MySQL 迁移数据库从C盘到D盘_mysql数据库从c盘迁移到d盘-程序员宅基地

文章浏览阅读631次,点赞9次,收藏4次。七、修改成功后,再去重启MySQL服务,一般就可以成功了,但我遇到一些错误,提示MySQL服务打不开,我查了一些资料,发现应该是新建的MySQL文件夹,没有相应的权限,还要加一下network service权限。在工作上,服务器当时只有C盘,所以把数据库安装到C盘上了,后来新添加了D盘,并且随着数据量增加,C盘也频频内存爆红,只能移到D盘了,经过实际操作,也遇到了许多问题,在此做出总结。最后加完权限,就可以正式启动,然后可以再查询一下第一步的语句,应该就改到新的路径中了。_mysql数据库从c盘迁移到d盘

SQL事务与隔离_sql 事务隔离-程序员宅基地

文章浏览阅读2.1k次,点赞4次,收藏5次。mosh 笔记_sql 事务隔离

解决rpm conflicts with file from package的两个方法_conflicts with file from package supervisor-3.1.3--程序员宅基地

文章浏览阅读6.2k次。1、卸载掉冲突的文件,安装新的文件。如果由于由于依赖关系导致要卸载很多软件,那可以优先考虑下一个方法。2、安装的时候增加--replacefiles参数,例如 rpm -ivh xxx.rpm --replacefiles,但是不知道在yum里如何实现_conflicts with file from package supervisor-3.1.3-3.el7.noarch

推荐文章

热门文章

相关标签