redhat6 mysql5.7_RedHat Enterprise 6下MySQL5.7的安装

本文详细介绍了MySQL 5.7.11企业版的RPM包安装过程,涉及安全设置,如初始root账户密码管理、禁用匿名账户、配置skip-grant-tables等。步骤包括清理旧包、安装关键组件、配置文件修改、密码策略调整和防火墙设置。
摘要由CSDN通过智能技术生成

从MySQL5.7.4起,以RPM包的方式安装后的MySQL的部署默认是安全的,并且有这些特点:

在大多数情况下,你只需要安装MySQL-server和MySQL-client安装包就可以安装上一个标准功能的MySQL。对于一个标准安装来说,其他的安装包不是必需的。

MySQL的安装程序会创建一个单独的root账户:'root'@'localhost',并自动为这个账户生成一个初始的随机密码,并将此密码标志为已过期。

对于MySQL5.7.6和更高的版本来说,初始的随机root密码是被写入错误日志的。对于MySQL5.7.4和5.7.5版本来说,密码是被写入以HOME环境变量命名的目录中的.mysql_secret文件中的。根据操作系统,可以使用诸如sudo这样的命令让HOME环境变量的值指向root系统用户的home目录。.mysql_secret文件是以只允许创建它的系统用户访问的600模式而创建的。(版本差异的产生,是因为自5.7.6版本起数据目录和root账户由mysqld --initialize来初始化,5.7.6以前的版本由mysql_install_db来初始化)。

不创建MySQL匿名账户。

不创建测试数据库。

作为上述操作所产生的结果,在安装完成后你需要去启动服务,以root身份,用初始的随机密码来进行连接,并且在连接后选择一个新的密码。在完成这些操作之前,root用户无法做其他的任何事情。修改密码,你可以用ALTER USER语句(例如,通过mysql客户端)。重设密码后,如果有创建.mysql_secret文件就把它删除;否则,在你执行mysql_secure_installation这条命令的时候,可能会再次看到那个文件和过期的root密码成为确认安全部署的一部分。

下面开始安装MySQL5.7.11企业版,要先配置好yum源,按照下面的步骤一步一步做就可以。

这里把所有的rpm包都拷贝到/opt目录下了。

这里强调一下,一定要用root用户来安装,安装后会自动创建mysql用户和mysql用户组。

[root@mysql opt]# rpm -qa | grep -i mysql

[root@mysql opt]# yum -y remove mysql-*

[root@mysql opt]# rpm -qa|grep mariadb

mariadb-libs-5.5.44-2.el7.x86_64

[root@mysql opt]# rpm -e mariadb-libs-5.5.44-2.el7.x86_64 --nodeps

[root@mysql opt]# rpm -ivh mysql-commercial-common-5.7.11-1.1.el6.x86_64.rpm

[root@mysql opt]# rpm -ivh mysql-commercial-libs-5.7.11-1.1.el6.x86_64.rpm

[root@mysql opt]# rpm -ivh mysql-commercial-libs-compat-5.7.11-1.1.el6.x86_64.rpm

[root@mysql opt]# rpm -ivh mysql-commercial-embedded-5.7.11-1.1.el6.x86_64.rpm

[root@mysql opt]# rpm -ivh mysql-commercial-devel-5.7.11-1.1.el6.x86_64.rpm

[root@mysql opt]# rpm -ivh mysql-commercial-embedded-devel-5.7.11-1.1.el6.x86_64.rpm

[root@mysql opt]# rpm -ivh mysql-commercial-client-5.7.11-1.1.el6.x86_64.rpm

[root@mysql opt]# rpm -ivh mysql-commercial-server-5.7.11-1.1.el6.x86_64.rpm

[root@mysql opt]# yum -y install perl-DBI

perl-DBI

perl-Compress-Raw-Bzip2

perl-Compress-Raw-Zlib

perl-Data-Dumper

perl-IO-Compress

perl-Net-Daemon

perl-PlRPC

[root@mysql opt]# rpm -ivh mysql-commercial-test-5.7.11-1.1.el6.x86_64.rpm

接下来修改配置文件

[root@mysql MySQL]#vi /etc/my.cnf

加入 skip-grant-tables

跳过密码检测

启动mysql

[root@mysql MySQL]#service mysqld start

[root@mysql MySQL]#mysql –u root –p

登录,无需密码直接回车

选择数据库

mysql>use mysql;

设置密码失效为"N"

mysql>update user set password_expired="N" where user="root";

设置密码为”123456”

mysql> update user set authentication_string=password("123456") where user="root";

刷新生效

mysql> flush privileges;

退出

mysql>quit;

修改配置

[root@mysql MySQL]#vi /etc/my.cnf

注释或删除 #skip-grant-tables

用新密码登陆

[root@mysql MySQL]#mysql –u root –p

修改密码

[root@mysql MySQL]#mysqladmin -u 用户名 -p 旧密码 password 新密码

[root@mysql MySQL]#mysqladmin -u root –p 123456 password "123-abcABC"

mysql>set password=password("123456");

查看现有的密码策略

mysql>show variables like 'val%'

validate_password_dictionary_file参数是指定密码验证的字典文件路径。

validate_password_length参数是密码的长度,这个参数由下面的公式生成

validate_password_number_count+ validate_password_special_char_count+ (2 * validate_password_mixed_case_count)

validate_password_mixed_case_count参数是密码中英文字符大小写的个数,当密码策略是MEDIUM或以上时生效。

validate_password_number_count参数是密码中至少含有的数字个数,当密码策略是MEDIUM或以上时生效。

validate_password_policy这个参数可以设为0、1、2,分别代表从低到高的密码强度,此参数的默认值为1,如果想将密码强度改若,则更改此参数为0。

validate_password_special_char_count参数是密码中非英文数字等特殊字符的个数,当密码策略是MEDIUM或以上时生效。

更改密码策略

mysql> set global validate_password_length=0; --更改密码长度

mysql> set global validate_password_policy=0; --更改密码策略为LOW

允许mysql远程访问

赋予任何主机访问数据的权限

mysql>grant all privileges on *.* to ‘root’@’%’with grant option;

mysql>grant all privileges on *.* to ‘root’@’%’identified by ‘123-abcABC’ with grant option;

default-character-set = utf8

通过增加参数 –default-character-set = utf8 解决乱码问题

查看防火墙状态

systemctl status firewalld

临时关闭防火墙命令。重启电脑后,防火墙自动起来

systemctl stop firewalld

永久关闭防火墙命令。重启后,防火墙不会自动启动

systemctl disable firewalld

打开防火墙命令systemctl enable firewalld

mysql默认已是开机自启动

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值