一、安装YUM Repo
1、由于CentOS的yum源没有mysql,需要在mysql官网下载yum repo配置文件。
下载命令:
wget 3359 dev.MySQL.com/get/MySQL 57-community-release-el7-9.noarch.rpm
2、然后进行repo的安装:
rpm-ivhmysql 57-community-release-el7-9.noarch.rpm
运行完成后,将在/etc/yum.repos.d/目录中生成两个repo文件MySQL-community.repo MySQL-community-source.repo
二.使用yum命令安装完成
注意:必须导航到/etc/yum.repos.d/目录,然后运行以下脚本
1、安装命令:
yum install mysql-server
2、启动msyql :
systemctl start mysqld #启动MySQL
3、获取安装时的临时密码(首次登录时使用此密码) :
grep ' temporary password '/var/log/mysqld.log
4、未取得临时密码的
4.1、删除已安装的mysql中剩下的数据
rm -rf /var/lib/mysql
4.2 .重新启动MySQL
systemctl start mysqld #启动MySQL
三.登录:
1、方式一(已验证) :
MySQL-u根- p
然后输入密码。 是刚才取得的临时密码
2、方式2 (未验证) :
访问mysql数据库
root @ test :/home # MySQL-uroot-proot
例如:
root @ test :/home # MySQL-root-xxxx
3、不能登录的情况下,进行以下配置,跳过登录认证
3.1、重置密码的第一步是跳过MySQL的密码认证流程,方法如下:
3.2、vim /etc/my.cnf (注: windows上修改的是my.ini ) )。
在文档中搜索mysqld,然后将其移动到“mysqld”文本段。
/mysqld (在vim编辑状态下直接输入此命令将搜索文本内容) ) ) ) ) ) ) ) ) )。
在[mysqld]后面的任意行中添加“skip-grant-tables”以跳过密码验证过程。 请参考下图。
3.3、保存文档并退出:
#:wq
3.4、以下必须重新启动MySQL :
四.登录成功后,修改密码
1、注意:现在进行密码强度检查。 (密码设置必须包括大小写、特殊符号和数字,长度不得小于8位。 )
2、不满足以上条件时,如下图报告错误。
密码策略问题异常信息:
错误1819 (hy 000 ) : yourpassworddoesnotsatisfythecurrentpolicyrequirements
3、解决办法:
3.1、查看mysql初始密码策略,
语句“showvariableslike ' validate _ password %; 框中,选择“默认值”。 请参阅。
下图:
3.2、首先需要设置密码的认证强度等级。 将validate_password_policy的全局参数设置为LOW即可。
设置语句“set global validate _ password _ policy=low; ”值,然后单击,
3.3、现在的密码长度是8,如果你不介意的话可以不更改。 一般来说,设置6位密码,将validate_password_length的全局参数设置为6即可。
设定语句“set global validate _ password _ length=6; ”值,然后单击,
3.4、mysql现在可以设置简单的密码。 满足6位数的长度就可以了。
修改语句“alter user ' root ' @ ' localhost ' identified by ' 123456 '; ”输入的密码策略已成功更改。
3.5、注:默认密码长度最小值为4,大小写至阿拉伯数字各1个特殊字符
如果密码长度小于3,则自动设置为4。
3.6、关于mysql密码策略相关参数;
1 )、validate_password_length固定密码总长;
2 ) validate _ password _ dictionary _ file密码指定验证的文件路径;
3 )、validate_password_
mixed_case_count 整个密码中至少要包含大/小写字母的总个数;4)、validate_password_number_count 整个密码中至少要包含阿拉伯数字的个数;
5)、validate_password_policy 指定密码的强度验证等级,默认为 MEDIUM;
关于 validate_password_policy 的取值:
LOW:只验证长度;
1/MEDIUM:验证长度、数字、大小写、特殊字符;
2/STRONG:验证长度、数字、大小写、特殊字符、字典文件;
6)、validate_password_special_char_count 整个密码中至少要包含特殊字符的个数;
五、修改密码
1、方式一(已验证):
ALTER USER 'root'@'localhost' IDENTIFIED BY '@abcd123456';
2、方式二(未验证)
set password=password("yourpassword");
六、开启远程控制
MySQL默认是没有开启远程控制的,必须添加远程访问的用户,即默认是只能自己访问,别的机器是访问不了的。
1、方式一(已验证):
1.1、连接服务器: mysql -u root -p
1.2、看当前所有数据库:show databases;
1.3、进入mysql数据库:use mysql;
1.4、查看mysql数据库中所有的表:show tables;
1.5、查看user表中的数据:select Host, User,Password from user;
1.6、修改user表中的Host: update user set Host='%' where User='root';
说明: % 代表任意的客户端,可替换成具体IP地址。
1.7、最后刷新一下:flush privileges;
1.8、注意:一定要记得在写sql的时候要在语句完成后加上" ; "
2、方式二(未验证):
1、使用 grant 命令
grant all privileges on 数据库名.表名 to 创建的用户名(root)@"%" identified by "密码";
2、格式说明:
数据库名.表名 如果写成*.*代表授权所有的数据库 flush privileges; #刷新刚才的内容
如:
grant all privileges on *.* to root@"113.123.123.1" identified by "123456789";
@ 后面是访问mysql的客户端IP地址(或是 主机名) % 代表任意的客户端,如果填写 localhost 为本地访问(那此用户就不能远程访问该mysql数据库了)
七、其他配置
1、设置安全选项:
mysql_secure_installation
2、关闭MySQL
systemctl stop mysqld
3、重启MySQL
systemctl restart mysqld
4、查看MySQL运行状态
systemctl status mysqld
5、设置开机启动
systemctl enable mysqld
6、关闭开机启动
systemctl disable mysqld
7、配置默认编码为utf8:
vi /etc/my.cnf #添加 [mysqld] character_set_server=utf8 init_connect='SET NAMES utf8'
其他默认配置文件路径:
配置文件:/etc/my.cnf 日志文件:/var/log//var/log/mysqld.log 服务启动脚本:/usr/lib/systemd/system/mysqld.service socket文件:/var/run/mysqld/mysqld.pid
8、查看版本
select version();