Xshell远程连接Linux安装Mysql8.0

一、下载Linux版Mysql

Mysql官方下载连接
在这里插入图片描述

二、上传Mysql

在Xshell终端输入rz将本地Mysql压缩包上传至Linux根目录中
在这里插入图片描述

三、检查是否安装mariadb

检查linux是否已经安装了mariadb数据库,mariadb数据库是mysql的分支,mysql与mariadb之间有冲突,执行命令:yum list installed | grep mariadb
在这里插入图片描述

四、卸载mariadb数据库

若linux中安装了mariadb数据库,先卸载掉,mariadb数据库可能与安装mysql发生冲突,执行命令:
yum -y remove mariadb-libs.x86_64
在这里插入图片描述在这里插入图片描述

五、解压缩

命令:在终端输入 tar -xvJf mysql-8.0.28-linux-glibc2.12-x86_64.tar.xz -C /usr/local/
含义:-C /usr/local/ 指定解压到哪个目录下去
在这里插入图片描述

六、修改文件夹名

cd / 切换到根目录,cd usr/local,输入ll查询所有当前文件
在这里插入图片描述
输入:mv mysql-8.0.28-linux-glibc2.12-x86_64 mysql-8.0.28修改文件夹名

七、创建data文件夹

切换到mysql-8.0.28目录,在mysql-8.0.28文件夹目录下创建一个data文件夹,执行命令:mkdir data
在这里插入图片描述

八、添加Mysql用户并初始化

useradd mysql

切换到mysql-8.0.28/bin目录下执行:生成root用户的初始化密码:例如 J+aQCukI%0o&

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

在这里插入图片描述

九、在mysql-8.0.28/bin目录下执行命令

./mysql_ssl_rsa_setup --datadir=/usr/local/mysql-8.0.28/data

十、更改mysql-8.0.28整个文件夹目录权限所属

chown -R mysql:mysql /usr/local/mysql-8.0.28/

十一、启动Mysql服务并登录

需要在mysql-8.0.28\bin目录下执行,其中&符号表示后台启动

./mysqld_safe &
./mysql -uroot -p

输入上面第八步生成的初始化密码进入
在这里插入图片描述

十二、执行sql语句 show databases

第一次使用将会提示修改mysql的root用户密码
mysql> show databases;
ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executing this statement.

修改mysql的密码
alter user 'root'@'localhost' identified by 'root';

十三、授权远程访问

注:8.0授权方式与5.0不一样,5.0在IP地址后面需加上 IDENTIFIED BY ‘密码’
其中*.* 的第一个 * 表示所有数据库名称,第二个 * 表示所有数据库表;
‘root’@‘%’ 中的root表示用户名,%表示ip地址,%也可以指定具体的ip地址,比如’root’@‘localhost’
或’root’@‘192.168.58.130’

grant all privileges on *.* to 'root'@'%' with grant option;

在这里插入图片描述

刷新权限
flush privileges;

在这里插入图片描述

十四、通过Navicat远程连接数据库

在这里插入图片描述
主机ip为Linux的ip地址,可以在终端输入ifconfig查看
在这里插入图片描述

十五、关闭防火墙

如果远程连接mysql连不上,可能是linux上的防火墙拦截了,可以将防火墙先关闭。
命令行界面输入命令systemctl status firewalld.service并按下回车键。
然后在下方可度以查看得到“active(running)”,此时说明防火墙已经被打开了。
在命令行中输入systemctl stop firewalld.service命令,进行关闭防火墙。
然后再使用命令systemctl status firewalld.service,在下方出现disavtive(dead),这样就说明防火墙已经关闭。
再输入命令systemctl disable firewalld.service,即可永久关闭防火墙
在这里插入图片描述

结尾

重启linux如遇到以下情况,是因为Mysql服务断了,需要手动重新开启即可
在这里插入图片描述
在这里插入图片描述

  • 9
    点赞
  • 32
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值