Centos安装msql并可以远程连接

在CentOS中默认安装有MariaDB,这个是MySQL的分支,但为了需要,还是要在系统中安装MySQL,而且安装完成之后可以直接覆盖掉MariaDB。

安装mysql

(由于yum源上没有mysql-server。所以必须去官网下载,这里 我们用wget命令,直接获取)

wget -i -c http://dev.mysql.com/get/mysql57-community-release-el7-10.noarch.rpm

安装mysql的依赖包

yum -y install mysql57-community-release-el7-10.noarch.rpm

安装mysql数据库

yum -y install mysql-community-server

完成安装,重启mysql

systemctl restart mysqld 

此时MySQL已经开始正常运行,不过要想进入MySQL还得先找出此时root用户的密码,通过如下命令可以在日志文件中找出密码:

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

复制粘贴上边的密码进入数据库

mysql -uroot -p

输入初始密码,此时不能做任何事情,因为MySQL默认必须修改密码之后才能操作数据库修改密码命令:
ALTER USER ‘root‘@’localhost’ IDENTIFIED BY ‘123’;

解决报错

以上报错是说新设置的密码过于简单,解决方式:
//首先按照默认密码格式复杂度更改

查看MySQL完整的初始密码规则

查看MySQL完整的初始密码规则,查看的前提是必须先用ALTER USER命令更改过密码

SHOW VARIABLES LIKE 'validate_password%';

修改MySQL默认策略和密码长度

因为当前的密码太复杂不方便后期做实验,所以使用命令修改密码策略两种方式:

set global validate_password_policy=0;
set global validate_password_policy=LOW;

注:密码策略分四种
1、OFF(关闭) 2、LOW(低) 3、MEDIUM(中) 4、STRONG(强)

修改密码长度

上边改完策略之后我们在改长度
SET GLOBAL validate_password_length=4;

查看密码规则

都改完之后查看密码规则

SHOW VARIABLES LIKE 'validate_password%';

接下来就可以将刚才的复杂密码改为简单的四位的密码了;

卸载安装源自动更新

此时还有一个问题,就是因为安装了Yum Repository,以后每次yum操作都会自动更新,因为当前数据库已安装完成,所以把这个卸载掉:

yum remove mysql57-community-release.noarch

初始化数据库

mysql_secure_installation

注:执行完初始化命令后需要输入数据库root用户密码,然后默认如上截图一路回车即可。(以上截图问题也可根据自己实际情况进行选择)

开启MySQL远程访问权限 允许远程连接

登陆mysql数据库

mysql -u root -p

查看user表

use mysql
select host,user,password from user;

可以看到在user表中已创建的root用户。host字段表示登录的主机,其值可以用IP,也可用主机名,有时想用本地IP登录,那么可以将以上的Host值改为自己的Ip即可。

实现远程连接(授权法)

将host字段的值改为%就表示在任何客户端机器上能以root用户登录到mysql服务器,建议在开发时设为%。将权限改为ALL PRIVILEGES

grant all privileges  on *.* to root@'%' identified by "你的密码";
flush privileges;
select host,user,password from user;

实现远程连接(改表法)

update user set host = ’%’ where user = ’root’;

Linux下彻底卸载mysql详解

使用以下命令查看当前安装mysql情况,查找以前是否装有mysql

rpm -qa|grep -i mysql 

停止mysql

systemctl stop mysqld 

删除

rpm -ev MySQL-client-5.5.25a-1.rhel5 

如果提示依赖包错误,则使用以下命令尝试

rpm -ev MySQL-client-5.5.25a-1.rhel5 --nodeps 

如果提示错误:error: %preun(xxxxxx) scriptlet failed, exit status 1

rpm -e --noscripts MySQL-client-5.5.25a-1.rhel5 

查找之前老版本mysql的目录、并且删除老版本mysql的文件和库

find / -name mysql
rm -rf /var/lib/mysql

注意:卸载后/etc/my.cnf不会删除,需要进行手工删除

rm -rf /etc/my.cnf 

再次查找机器是否安装mysql

rpm -qa|grep -i mysql 

end 😄

0%