Linux安装Mysql8

1.下载mysql8

Download MySQL Community

选择linux通用版本,然后将下载好的压缩包放到 /usr/local 目录下

选择glibc 64位压缩包

2.输入指令解压到当前目录

tar -xvf 可以解压tar.xz后缀的压缩文件
tar -zxvf 可以解压tar.gz后缀的压缩文件


tar -xvf mysql-8.0.*******

3.重命名文件为mysql-8.0

用xftp工具直接重命名或者是用mv [参数]


mv mysql-8.0.30-linux-glibc2.12-x86_64 mysql-8.0

4.创建data文件夹 储存文件

在mysql目录下创建data文件夹

cd mysql-8.0
mkdir data
5.创建用户组以及用户

创建mysql组,再创建mysql用户并将mysql用户添加到组中

groupadd mysql
useradd -g mysql mysql
6.授权用户

将mysql文件夹的所有者和所有组都改为mysql

chown -R mysql.mysql /usr/local/mysql-8.0
7.mysql初始化

进入bin目录执行mysqld文件进行初始化

cd bin

初始化

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

执行初始化命令若出现
在这里插入图片描述

# 依赖工具包
yum install -y libaio
# 再次执行,安装mysql执行
./mysqld --user=mysql --basedir=/usr/mysql/mysql-8.0.20 --datadir=/usr/mysql/mysql-8.0.20/data/ --initialize   执行成功

最后一行红色标记是生成的随机密码,记得复制保存

在这里插入图片描述

8.编辑my.cnf
vim /etc/my.cnf

一定注释掉这两行代码
log-error=/var/log/mariadb/mariadb.log
pid-file=/var/run/mariadb/mariadb.pid—

[mysqld]
port=3306

#mysql根目录
basedir=/usr/local/mysql8
#mysql的data目录
datadir=/usr/local/mysql8/data

#socket=/var/lib/mysql/mysql.sock

character-set-server=UTF8MB4

# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0
# Settings user and group are ignored when systemd is used.
# If you need to run mysqld under a different user or group,
# customize your systemd unit file for mariadb according to the
# instructions in http://fedoraproject.org/wiki/Systemd

[mysqld_safe]
# log-error=/var/log/mariadb/mariadb.log
# pid-file=/var/run/mariadb/mariadb.pid

修改完成之后,输入: ,wq!保存并退出

9.添加mysqld服务

返回mysql-8.0目录下,添加mysqld服务到系统

cd ..

cp -a ./support-files/mysql.server /etc/init.d/mysql
10.授权以及添加服务
chmod +x /etc/init.d/mysql
 
chkconfig --add mysql
11.启动mysql
service mysql start
12.查看启动状态
service mysql status
13.将mysql命令添加到服务
ln -s /usr/local/mysql-8.0/bin/mysql /usr/bin
14.登录
 mysql -uroot -p

将之前生成的 密码输入即可登录

15.修改root密码
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '123456';

然后刷新权限 使密码生效

flush privileges;
16.设置允许远程连接并生效

root表示想要被连接的数据库的用户名
其中“%”表示允许所有机器能访问root用户

update user set host='%' where user='root';
 
flush privileges;

查看账号host是否为%

use mysql
select user, host from user;
18.开放防火墙3306端口

到这里mysql已经可以本地连接上了,若是想远程连接,还需要开发3306端口

–permanent 代表永久生效,否则重启linux后要再次开启

 firewall-cmd --add-port=3306/tcp --permanent
 
 firewall-cmd --reload

查看防火墙端口开放状态

firewall-cmd --list-all

ps:

# 开启防火墙
systemctl start firewalld

# 开放指定端口
firewall-cmd --zone=public --add-port=3306/tcp --permanent

# 重启防火墙
firewall-cmd --reload

# 查看端口号
netstat -ntlp 
netstat -ntulp |grep 3306

# 开放端口列表
firewall-cmd --list-all

补充:
  1. 新增用户
CREATE USER 'dev'@'%' IDENTIFIED BY 'password';
  1. 刷新权限
FLUSH PRIVILEGES;
  1. 重启
service mysql restart
  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值