linux系统安装mysql yum方式
起初我是想用tar包安装的,但是奈何我死活无法从官网上下载mysql.tar包,所以改用了yum方式
一、查看系统是否已经存在mysql,有则卸载(参考博文:https://www.cnblogs.com/javabg/p/9970723.html)
(yum安装是最简便和稳定的安装方式,centos7默认安装的是mariadb,需要先卸载mariadb,先查看是否安装mariadb
rpm -qa | grep mariadb
如果找到,则拷贝结果,使用下面命令删除,如删除mariadb-libs-5.5.35-3.el7.x86_64
rpm -e --nodeps mariadb-libs-5.5.35-3.el7.x86_64)
1.卸载 先停掉mysql进程 没有安装过的可以直接跳过
pkill -9 mysqld
2、rpm -qa|grep -i mysql
3、用命令 yum -y remove
yum -y remove mysql-community-client-5.6.38-2.el7.x86_64
卸载不掉的用 rpm -ev
依次卸载 直到没有
二、下载安装
cd /usr/mysql(我自己创建的)
1.安装rpm包
直接使用yum -y install 命令安装mysql是无法安装mysql的高级版本,需要先安装带有可用的mysql5系列社区版资源的rpm包,输入如下命令进行安装。
命令:rpm -Uvh http://dev.mysql.com/get/mysql-community-release-el7-5.noarch.rpm
(有的博文是这样做的:
wget -i -c http://dev.mysql.com/get/mysql57-community-release-el7-10.noarch.rpm
yum -y install mysql57-community-release-el7-10.noarch.rpm
yum -y install mysql-community-server)
2.查看mysql可用版本
命令:yum repolist enabled | grep "mysql.*-community.*"
3、输入如下命令开始安装mysql
命令:yum -y install mysql-community-server
可以使用命令让mysql服务加入开机启动(可选):systemctl enable mysqld
4. 启动mysql服务
(service mysqld restart 有人这样启动)
systemctl start mysqld.service 启动命令
systemctl status mysqld.service 查看状态命令
重置密码,先获取原始密码,如下(使用初始密码,不能做任何事情,因为MySQL默认必须修改密码之后才能操作数据库:)
[root@localhost ~]# grep "password" /var/log/mysqld.log
mysql -uroot -p # 回车后会提示输入密码
mysql>ALTER
USER
'root'
@
'localhost'
IDENTIFIED
BY
'你的新密码'
;
执行这个可能会报错,因为密码过于简单
MySQL有密码设置的规范,具体是与validate_password_policy的值有关
MySQL完整的初始密码规则可以通过如下命令查看:SHOW VARIABLES
LIKE
'validate_password%'
;
这时候我们要把密码规则改一下,执行下面sql就可以了:
set
global
validate_password_policy=0;
set
global
validate_password_length=1;
设置之后就是我上面查出来的那几个值了,此时密码就可以设置的很简单,例如1234之类的。到此数据库的密码设置就完成了。
但此时还有一个问题,就是因为安装了Yum Repository,以后每次yum操作都会自动更新,需要把这个卸载掉:
yum -y remove mysql57-community-release-el7-10.noarch
操作完成上面的,现在还不能用可视化的客户端进行连接,需要我们进行授权:
按上述操作发现不行,还是连接不上
有人说要设置my.cnf中mysql的绑定地址(参考博文 : https://blog.csdn.net/qq_39206238/article/details/80351803)
找到:bind-address = 127.0.0.1
去除 IP 地址绑定,把它改为:bind-address = 0.0.0.0
使用 whereis my.cnf 命令,可以查找该文件的位置
进入mysql cmd,mysql>status;将显示当前mysql的version的各种信息。 方法二:还是在mysql的cmd下,输入:mysql>show global variables like 'port'; 将显示端口号方法三:打开mysql的 配置文件 my.ini进入后直接查看 port
期间操作命令用到了
mysql -uroot -p
use mysql
select user,host from user;
结果我的navicat还是连接不上,找了一圈发现,是因为我用的linux服务器是阿里云的,我的连接请求被阿里云安全组规则拦住了,解决如下:
点击实例ID进入以下界面:
点击安全组进入安全组配置:
具体配置参考如下:
https://help.aliyun.com/document_detail/25475.html?spm=5176.2020520101.0.0.13cf4df5h5auou#d14e17
解决!!!!