CentOS7.6安装MySQL8.0(图文详细篇)
目录
一、安装前准备
1、在官网下载MySQL安装包(注意下载的安装包类型)



2、查看是否安装mariadb
# rpm -qa | grep mariadb

3、卸载mariadb
# rpm -e --nodeps mariadb-libs-5.5.60-1.el7_5.x86_64

4、安装MySQL依赖包 libaio
# yum install libaio

5、创建MySQL安装目录和数据存放目录,并授权
# mkdir /usr/local/mysql
# mkdir /usr/local/mysql/mysqldb
# chmod -R 777 /usr/local/mysql
# chmod -R 777 /usr/local/mysql/mysqldb/

6、创建MySQL组:创建MySQL用户,并设置密码。
# useradd mysql
# passwd mysql

7、将mysql目录的权限授给mysql用户和mysql组
# chown -R mysql:mysql /usr/local/mysql

8、上传并解压安装包(上传可以通过ftp等工具)
# cd /usr/local/mysql
# tar -zxvf mysql-8.0.16-el7-x86_64.tar.gz

解压后如下图:

9、创建MySQL的安装初始化配置文件my.cnf
# vi /etc/my.cnf
[mysqld]
# 设置3306端口
port=3306
# 设置mysql的安装目录
basedir=/usr/local/mysql/mysql-8.0.16-el7-x86_64
# 设置mysql数据库的数据的存放目录
datadir=/usr/local/mysql/mysqldb
# 允许最大连接数
max_connections=10000
# 允许连接失败的次数。这是为了防止有人从该主机试图攻击数据库系统
max_connect_errors=10
# 服务端使用的字符集默认为UTF8
character-set-server=utf8
# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB
# 默认使用“mysql_native_password”插件认证
default_authentication_plugin=mysql_native_password
[mysql]
# 设置mysql客户端默认字符集
default-character-set=utf8
[client]
# 设置mysql客户端连接服务端时默认使用的端口
port=3306
default-character-set=utf8

二、安装MySQL
10、安装MySQL
进入MySQL安装目录:
# cd /usr/local/mysql/mysql-8.0.16-el7-x86_64/bin/

安装MySQL,并记住随机密码:
# ./mysqld --initialize --console

11、启动MySQL服务
# cd ..
# cd support-files/
# ./mysql.server start

注意:如果启动有问题,请看文章最后的安装问题!
12、将MySQL加入系统进程中
# cp mysql.server /etc/init.d/mysqld
重启MySQL服务:
# service mysqld restart

13、修改登录密码
# cd ..
# cd bin/
# ./mysql -u root -p

修改密码:
mysql> ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'centos_data';

三、设置远程登录
14、设置允许远程登录
mysql> use mysql;
mysql> update user set user.Host='%' where user.User='root';
mysql> flush privileges;

详细设置请参考另一篇文章:https://blog.csdn.net/dbdd_cf/article/details/93734336
退出MySQL:
mysql> quit;
重启MySQL服务:
# service mysqld restart

至此MySQL安装完成!
四、安装问题解决
- 安装问题:
1、启动MySQL服务问题:
(1)启动MySQL服务时报 my_print_defaults:未找到命令错误。

解决方法:修改 /etc/my.cnf 中的 MySQL的安装目录,如图:


(2)启动MySQL服务时报 updating PID file 错误。

解决方法:在安装目录下重新授权,然后再启动MySQL!
# chmod -R 777 /usr/local/mysql/mysql-8.0.16-el7-x86_64
# chmod -R 777 /usr/local//mysql/mysqldb

2、任意目录登录MySQL问题:
原因:
这是由于系统默认会查找 /usr/bin 下的命令,如果这个目录下没有这个命令,就会报 未找到命令。

解决方法:创建一个软连接到 /usr/bin。
# ln -s /usr/local/mysql/mysql-8.0.16-el7-x86_64/bin/mysql /usr/bin

五、设置MySQL开机自启
1、先将MySQL加入系统进程(第10步已做)
# cp /usr/local/mysql/mysql-8.0.16-el7-x86_64/support-files/mysql.server /etc/init.d/mysqld
赋予可执行权限:# chmod +x /etc/init.d/mysqld
添加为服务:# chkconfig --add mysqld
查看服务列表:# chkconfig --list

注:3、4、5的状态为开或者on,则表示成功。如果是管或者off,则需要执行:# chkconfig --level 345 mysqld on
最后重启服务器:reboot
再次查看服务列表或者查看3306端口:

启动成功!
欢迎进群:747509472 交流学习,感谢指正!
CentOS7.6安装MySQL8.0(图文详细篇)的更多相关文章
- windwos10安装mysql8.0.20详细图文教程
windwos10安装mysql8.0.20详细图文教程 1.浏览器搜索mysql下载安装 地址:https://dev.mysql.com/downloads/mysql/ 2.登录或者不登录下载 ...
- CentOS7离线安装MySQL8.0
CentOS7离线安装MySQL8.0 卸载软件 rpm -e --nodeps 要卸载的软件包 root@jacky zookeeper]# rpm -e --nodeps java-1.6.0-o ...
- Linux安装mysql8.0.29详细教程
我在上午卸载了陪伴我多年的mysql5.7,现在准备安装mysql8.0. 一.登录mysql官网下载mysql安装包(我的系统是Centos7) MySQL :: Download MySQL ...
- Win10安装mysql-8.0.11-winx64详细步骤
安装 mysql-8.0.11-winx64 https://blog.csdn.net/qq_20788055/article/details/80372577
- CentOS7安装MySQL8.0图文教程
1.下载 MySQL 所需要的安装包 网址:https://dev.mysql.com/downloads/mysql/ 2.Select Operating System: 选择 Red Hat , ...
- centos7下安装mysql8.0.12及设置权限
一.mysql版本介绍 mysql的官网为:https://www.mysql.com/ 在官网上可以看到多个版本,主要版本如下, 1.MySQL Community Server 社区版本,开源免费 ...
- Centos7下安装MySQL8.0.23-小白的开始
首先简单介绍一下什么叫MySQL: 数据库简而言之就是存储数据的仓库,为了方便数据的存储和管理,它将数据按照特定的规律存储在磁盘上.是为了实现一定的目的,按照某种规则组织起来的数据的集合: MySQL ...
- centOs7.6安装 mysql-8.0.27
1.下载mysql 2.连接服务器 3.通过 rpm -qa | grep mariadb 命令查看 mariadb 的安装包 4.通过 rpm -e mariadb-libs-5.5.68-1.el ...
- centos7 二进制安装mysql-8.0.19
安装包下载地址:https://dev.mysql.com/get/Downloads/MySQL-8.0/mysql-8.0.19-linux-glibc2.12-x86_64.tar.xz 1.检 ...
随机推荐
- 长连接 Websocket
import json from flask import Flask,request,render_template from geventwebsocket.handler import WebS ...
- java基础算法(一):最大子序列和问题的多种算法思路
问题: /** * 给定一个整数数组 nums ,找到一个具有最大和的连续子数组(子数组最少包含一个元素),返回其最大和,并顺序打印子序列. * 示例: * 输入: [-2,1,-3,4,-1,2,1 ...
- MySQL会话控制限制登录次数
前言 一般我们开发环境的MySQL是没有配置登录保护的,但仅限于开发环境,正式环境是不允许无限制登录,存在很大的风险. MySQL 5.7 以后提供了Connection-Contro ...
- CSS学习 | 思维导图
CSS样式
- 微信小程序如何创建云函数并安装wx-server-sdk依赖
时间:2020/01/23 步骤 1.在微信开发者工具中云函数所在的文件夹的图标与其他文件夹是不同的,如下(第一个是云函数): 如果需要使一个普通文件变为云函数文件夹,需要在project.confi ...
- 2、TCP/IP
TCP/IP协议栈:物理层.数据接口层.网络层.传输层.应用层或网络接口层.网络层.传输层.应用层 TCP/IP协议栈的核心协议:1.TCP2.UDP3.ICMP4.IGMP5.ARP:映射IP→Et ...
- Android整理:SQlite数据库的使用以及通过listView显示数据
前言:上个月与同学一起做了一个简单的Android应用,这段时间正好没有很多事情所以趁热整理一下学习到的知识,刚开始学习Android还有很多不懂的地方,继续努力吧! 作业中需要用到数据库,当然首选A ...
- 谷歌翻译API
http://translate.google.cn/translate_a/t?client=t&text=你好&hl=zh-CN&sl=zh-CN&tl=en&am ...
- TypeError:Can't instantiate abstract class Ultraman with abstract methods sttack 报错
报错Can't instantiate abstract class Ultraman with abstract methods sttack 通过非常仔细的排查,发现错误如下: 1.单词拼写错误是 ...
- 利用idea对tomcat容器进行debug
通过idea对tomcat容器进行debug有两种方式: 一种直接修改idea中引用tomcat的启动配置 另一种是修改tomcat的启动脚本再通过设置diea的远程debug的方式进行调试 1.设置 ...