教程集 www.jiaochengji.com
教程集 >  Golang编程  >  golang教程  >  正文 CentOS 下载 安装 MySQL 8.0

CentOS 下载 安装 MySQL 8.0

发布时间:2023-03-15   编辑:jiaochengji.com
教程集为您提供CentOS 下载 安装 MySQL 8.0等资源,欢迎您收藏本站,我们将为您提供最新的CentOS 下载 安装 MySQL 8.0资源

下载 安装 MySQL 8.0

  • 1-下载 MySQL
    • 1.1-官方下载
    • 1.2-百度云下载
  • 2-安装 MySQL
    • 2.1-查看系统版本
    • 2.2-创建用户和用户组
    • 2.3-解压免编译包
    • 2.4-解压文件夹重命名
    • 2.5-解压文件夹软连接
    • 2.6-配置文件 my.cnf
    • 2.7-安装文件权限
    • 2.8-创建运行数据文件夹
    • 2.9-设置运行数据文件夹权限
    • 2.10-初始化 MySQL
      • 2.10.1-切换至 mysql 用户
      • 2.10.2-使用 /etc/my.cnf 配置文件(默认)
      • 2.10.3-指定配置文件初始化(可启动多个数据库)
      • 2.10.4-记录临时密码(后面登录使用)
      • 2.10.5-查看初始化成功产生文件
    • 2.11-启动 MySQL
      • 2.11.1-使用 /etc/my.cnf 配置文件(默认)
      • 2.11.2-初始化的配置文件需要指定
      • 2.11.3-查看 MySQL 进程
  • 3-连接 MySQL
    • 3.1-登录 MySQL
      • 3.1.1-使用 /etc/my.cnf 配置文件(默认)
      • 3.1.2-初始化的配置文件需要指定
    • 3.2-修改 MySQL 密码
  • 4-常见问题
    • 4.1-初始化 MySQL 失败
    • 4.2-无法远程登录 MySQL
      • 4.2.1-是否启动成功
      • 4.2.2-是否占用系统 3306 端口
      • 4.2.3-是否可以 ping 通服务器
      • 4.2.4-关闭防火墙
      • 4.2.5-再次远程登录 MySQL
      • 4.2.6-授权用户远程访问
      • 4.2.7-远程登录 MySQL 成功
    • 4.3-用户授权报错 1064 (42000)
    • 4.4-Navicat 连接 MySQL 报 2059 错误


1-下载 MySQL

1.1-官方下载

  • http://dev.mysql.com/downloads/

CentOSRed Hat版本差别不大,可以选择Red Hat版本或者Linux-Generic通用版本。

1.2-百度云下载

  • 链接:https://pan.baidu.com/s/1NW_3_w3dg5ev42nUKqcocQ
  • 提取码:70mn

2-安装 MySQL

2.1-查看系统版本

cat /etc/redhat-release

2.2-创建用户和用户组

# 自动创建用户 用户组
useradd mysql

# 设置用户密码
passwd mysql

2.3-解压免编译包

# 解压到 /data/opt/ 目录下
tar -xvf /data/targz/mysql-8.0.19-linux-glibc2.12-x86_64.tar.xz -C /data/opt/

ll /data/opt/mysql-8.0.19-linux-glibc2.12-x86_64/

2.4-解压文件夹重命名

mv /data/opt/mysql-8.0.19-linux-glibc2.12-x86_64/ /data/opt/mysql-8.0.19_3306


备注:

# 目录 A 重命名 B
mv A B
# 目录 A 移动到目录 B 下并重命名为 C
mv /A /B/C

2.5-解压文件夹软连接

ln -s /data/opt/mysql-8.0.19_3306/ /usr/local/mysql-8.0.19_3306

2.6-配置文件 my.cnf

my.cnf配置文件生效优先级(由高到低):

  • MySQL启动时指定的具体参数。
  • MySQL启动时指定位置的配置文件。
  • MySQL数据目录下的my.cnf文件。
  • MySQL读取/etc/my.cnf文件。
  • MySQL默认的参数。
# 安装 vim 软件
yum install vim -y

my.cnf

# 客户端设置(客户端的连接参数)
[client]
# 连接 MySQL 使用的端口
port = 3306
# 连接 MySQL 使用的套接字文件
socket = /data/data/mysql/8.0.19_3306/mysql.sock
# 设置字符集
default-character-set = utf8mb4

# 服务端设置
[mysqld]
# 服务id(可高可用时区分)
server_id = 01
# 监听端口
port = 3306
# 启动用户
user = mysql
# 数据库默认编码(5.1以下 default-character-set)
character_set_server = utf8mb4
# 数据库默认比对规则、排序规则
collation_server = utf8mb4_bin
# 该目录为根目录(安装目录)
basedir = /data/opt/mysql-8.0.19_3306
# 数据库初始化数据存放目录(创建文件夹且文件夹中无文件)
datadir = /data/data/mysql/8.0.19_3306/data
# 数据库存放临时文件的目录(创建文件夹)
tmpdir = /data/data/mysql/8.0.19_3306/tmp
# 指定客户端程序与数据库间通讯的套接字文件
socket = /data/data/mysql/8.0.19_3306/mysql.sock
explicit_defaults_for_timestamp = true

[mysqld_safe]
# 数据库错误日志(创建文件夹)
log-error = /data/data/mysql/8.0.19_3306/log/mysqld.log
# 数据库启动后进程文件位置
pid-file = /data/data/mysql/8.0.19_3306/3306.pid

2.7-安装文件权限

# 设置安装文件所属 用户和用户组
chown -R mysql:mysql /data/opt/mysql-8.0.19_3306/

# 设置安装文件调用权限
chmod -R 755 /data/opt/mysql-8.0.19_3306/

# 查看设置结果
ll /data/opt/mysql-8.0.19_3306/


备注:

# 通配符匹配
chown -R mysql:mysql /usr/local/mysql*
chmod -R 755 /usr/local/mysql*

2.8-创建运行数据文件夹

mkdir -p /data/data/mysql/8.0.19_3306/data
mkdir -p /data/data/mysql/8.0.19_3306/log
mkdir -p /data/data/mysql/8.0.19_3306/tmp

2.9-设置运行数据文件夹权限

chown -R mysql:mysql /data/data/mysql/8.0.19_3306/
chmod -R 755 /data/data/mysql/8.0.19_3306/

2.10-初始化 MySQL

MySQL 5.7.2及以上版本与以前版本不同,很多资料上使用命令../scripts/mysql_install_db。而在MySQL 5.7.2mysql_install_db的指令在bin目录下,官网说使用mysqld --initialize进行初始化。

2.10.1-切换至 mysql 用户

su mysql

2.10.2-使用 /etc/my.cnf 配置文件(默认)

/data/opt/mysql-8.0.19_3306/bin/mysqld --initialize

2.10.3-指定配置文件初始化(可启动多个数据库)

/data/opt/mysql-8.0.19_3306/bin/mysqld --defaults-file=/data/opt/mysql-8.0.19_3306/my.cnf --initialize

2.10.4-记录临时密码(后面登录使用)

A temporary password is generated for root@localhost: Hfp9,(i(Xsmu

2.10.5-查看初始化成功产生文件

2.11-启动 MySQL

MySQL mysqld mysqld_safe mysql.server mysqld_multi 四种启动方式区别

2.11.1-使用 /etc/my.cnf 配置文件(默认)

/data/opt/mysql-8.0.19_3306/bin/mysqld

2.11.2-初始化的配置文件需要指定

若初始化指定配置文件,启动时仍需指定。

/data/opt/mysql-8.0.19_3306/bin/mysqld --defaults-file=/data/opt/mysql-8.0.19_3306/my.cnf

2.11.3-查看 MySQL 进程

ps -ef|grep mysql-8.0.19


3-连接 MySQL

3.1-登录 MySQL

通过上面临时密码登录:A temporary password is generated for root@localhost: Hfp9,(i(Xsmu

3.1.1-使用 /etc/my.cnf 配置文件(默认)

/data/opt/mysql-8.0.19_3306/bin/mysql -u root -p

3.1.2-初始化的配置文件需要指定

若初始化指定配置文件,登录时仍需指定。

/data/opt/mysql-8.0.19_3306/bin/mysql --defaults-file=/data/opt/mysql-8.0.19_3306/my.cnf -u root -p

3.2-修改 MySQL 密码

# 格式:ALTER USER \'root\'@\'localhost\' IDENTIFIED WITH mysql_native_password BY \'新密码\';  
ALTER USER \'root\'@\'localhost\' IDENTIFIED WITH mysql_native_password BY \'password\';


4-常见问题

4.1-初始化 MySQL 失败

--initialize specified but the data directory has files in it. Aborting

# 数据库初始化数据存放目录(创建文件夹且文件夹中无文件)
datadir = /data/data/mysql/8.0.19_3306/data

删除/data/data/mysql/8.0.19_3306/data文件夹下所有文件

4.2-无法远程登录 MySQL

客户端无法连接到MySQL服务器(网络不通)

4.2.1-是否启动成功

  • 查看MySQL进程:
    ps -ef|grep mysql-8.0.19
    
  • 命令登录MySQL
    /data/opt/mysql-8.0.19_3306/bin/mysql --defaults-file=/data/opt/mysql-8.0.19_3306/my.cnf -u root -p
    

4.2.2-是否占用系统 3306 端口

# yum install net-tools -y
netstat -lnp|grep 3306

4.2.3-是否可以 ping 通服务器

4.2.4-关闭防火墙

CentOS 7默认使用 firewall作为防火墙

# 防火墙状态
firewall-cmd --state

# 停止 firewall
systemctl stop firewalld.service

# 禁止 firewall 开机启动
systemctl disable firewalld.service 


备注:

# 查看已开放端口
firewall-cmd --list-ports

# 开启端口:--zone #作用域  --add-port=80/tcp #添加端口(端口/通讯协议) --permanent #永久生效(无此参数重启后失效)
firewall-cmd --zone=public --add-port=80/tcp --permanent

# 关闭 selinux:将 etc/selinux/config 文件中 SELINUX=enforcing 改为 SELINUX=disabled
vi /etc/selinux/config

4.2.5-再次远程登录 MySQL

客户端请求MySQL服务器被拒绝(网络通,被拒绝)

4.2.6-授权用户远程访问

MySQL 命令行 创建数据库 添加用户 用户授权

# MySQL 命令行模式(初始化的配置文件需要指定)
/data/opt/mysql-8.0.19_3306/bin/mysql --defaults-file=/data/opt/mysql-8.0.19_3306/my.cnf -u root -p

# mysql db 中存储了用户信息(user 表)
use mysql

# 表格中 root 用户的 host 应该显示 localhost(只支持服务器访问,不支持远程)
select host, user, authentication_string, plugin from user;

# 创建远程登录用户 密码
CREATE USER 'root'@'%' IDENTIFIED BY 'password';

# 用户登录的加密规则修改为 mysql_native_password*
ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY 'password';

# 授予用户(root)远程访问权限  GRANT ALL(所有权限) %(通配所有 host,可访问远程)
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' WITH GRANT OPTION;

# MySQL 权限放在 cache(grant表)中,所以必须重新重新加载
flush privileges;

# 表格中 root 用户的 host 已经变成 %(修改成功,可远程访问)
select host, user, authentication_string, plugin from user;

4.2.7-远程登录 MySQL 成功

4.3-用户授权报错 1064 (42000)

MySQL 8.0 用户授权报错 1064 (42000)

4.4-Navicat 连接 MySQL 报 2059 错误

MySQL 8.0版本与MySQL5.0版本加密规则不一致,而现有的可视化工具只支持旧的加密方式。两种解决方法:

  • 升级Navicat驱动。
  • MySQL用户登录的加密规则修改为mysql_native_password**

第二种解决方法:

# 修改加密规则(password 当前密码)
ALTER USER 'root'@'localhost' IDENTIFIED BY 'password' PASSWORD EXPIRE NEVER;

# 修改 root 用户密码(password 设置新密码)
ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY 'password';

# 刷新权限
flush privileges;

到此这篇关于“CentOS 下载 安装 MySQL 8.0”的文章就介绍到这了,更多文章或继续浏览下面的相关文章,希望大家以后多多支持JQ教程网!

您可能感兴趣的文章:
CentOS 5.5使用yum安装LAMP(php环境)步骤分享
Centos安装libxml2 'bin/rm: cannot remove libtoolT'...的解决方法
CentOS 下载 安装 MySQL 8.0
CentOS 6.3下源码编译安装MySQL 5.6
CentOS 6.2 yum 安装MySQL初始化警告错误的解决方法
centos怎么部署php项目
CentOS7 安装 mysql8
CentOS 6上安装php-mcrypt扩展的方法
centos创建Mysql用户组的方法
MySQL-5.6.13 zip解压版的安装与配置教程

[关闭]
~ ~