linux安装Mysql

linux安装Mysql

【安装教程系列】:

查看自己是否安装过mysql,如果安装过,也不用看了,如果想安装别的版本也可以再看

rpm -qa|grep mysql   # 我这里里没有安装过,所以不需要卸载,如果有接着执行以下命令
rpm -e --nodeps 上面查询出来的文件名

在这里插入图片描述

Centos有自己默认的数据库Maria DB,我们不卸载应该也没什么事,不过我们这里还是卸载下了,还是要卸载的 因为我在阿里云服务器上装的时候不卸载依赖会有问题(2024更):

[root@localhost ~]# rpm -qa|grep maria* 
marisa-0.2.4-4.el7.x86_64
mariadb-libs-5.5.68-1.el7.x86_64
[root@localhost ~]# rpm -e --nodeps mari^C
[root@localhost ~]# rpm -e --nodeps marisa-0.2.4-4.el7.x86_64
[root@localhost ~]# rpm -e --nodeps mariadb-libs-5.5.68-1.el7.x86_64

在这里插入图片描述

这里我们安装一个5.7版本的,如果想安装其他版本,把rpm源换一下就可以了:

rpm -ivh http://repo.mysql.com/yum/mysql-5.7-community/el/7/x86_64/mysql57-community-release-el7-10.noarch.rpm  # 如果想换版本可以直接更换这个源就行,点击去找到.rpm 结尾的

源地址:http://repo.mysql.com/yum/,大家可以选择5.7版本的,下面也可以选择8版本的:

在这里插入图片描述

在这里插入图片描述

然后安装:

yum install mysql-community-server -y

我这里显示失败:

在这里插入图片描述

解决办法:

rpm --import https://repo.mysql.com/RPM-GPG-KEY-mysql-2022

然后再次安装,搞定:

在这里插入图片描述

启动服务并加入开机项:

systemctl start mysqld
systemctl enable mysqld

检查一下:

systemctl staus mysqld

绿色真好,安装并启动成功

在这里插入图片描述

数据库有了,那我们怎么登录呢,首先查看一下密码:

grep "password" /var/log/mysqld.log

可以看到数据库设置的默认密码是:0q9iGHV?V7Jd

在这里插入图片描述

登陆下:

mysql -uroot -p0q9iGHV?V7Jd

登录成功:

在这里插入图片描述

这里我们需要修改了这个默认密码,修改密码:

数据库默认密码要求很高,需要特殊符号,大小写字母,长度大于8位,这里我们想设置成root,比较简单,所以修改下密码的规则,可以设置简单密码:

set global validate_password_policy=0;
set global validate_password_length=1;  # 应该看得懂吧

修改密码:

set password for root@localhost = password('mkxiaoer');

在这里插入图片描述

退出mysql:

mysql> exit;
Bye

用新密码登录,成功:

在这里插入图片描述

连接navcat

连接失败:

在这里插入图片描述

查看防火墙是否开启这个端口:

firewall-cmd --zone=public --list-ports

我这里没有开启:

在这里插入图片描述

开启3306端口:

firewall-cmd --zone=public --add-port=3306/tcp --permanent
# 再重新加载下防火墙
firewall-cmd --reload

在这里插入图片描述

再次测试连接,这次不是失败连接了,而是拒绝连接:

在这里插入图片描述

mysql默认是不允许非本机登录的,这里我们还得设置下,进入mysql:

语法模板

grant all privileges on 库名.表名 to ‘用户名’@‘IP地址’ identified by ‘密码’ with grant option;

库名:要远程访问的数据库名称,所有的数据库使用“*”

表名:要远程访问的数据库下的表的名称,所有的表使用“*”

用户名:要赋给远程访问权限的用户名称

IP地址:可以远程访问的电脑的IP地址,所有的地址使用“%”

密码:要赋给远程访问权限的用户对应使用的密码

*.*的话表示所有到数据库下到所有表都允许访问;

‘%’:表示允许访问到mysql的ip地址;当然你也可以配置为具体到ip名称;%表示所有ip均可以访问;

# 设置任何ip可以访问
grant all privileges on *.* to 'root'@'%' identified by 'root' with grant option;
# 刷新权限
flush privileges;

在这里插入图片描述

测试连接,连接成功OK

在这里插入图片描述

小结

这里简单安装下,mysql下次我们试试用搭建mysql集群,开多个虚拟机太费事,我们可以用docket去搭建集群,那看到这里点个赞呗,留个关注啊~

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

学习日记

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值