linux 安装mysql教程

本文详细介绍了在CentOS7系统上安装MySQL数据库的过程,包括下载与安装mysql源,安装mysql-server、mysql-devel及mysql,设置mysql开关,解决登录问题,设置密码,调整密码策略,以及解决远程连接问题等关键步骤。

1. 下载mysql(选择适合当前linux版本的mysql)

centOs7.7 64位 ----> mysql-5.7

wget http://repo.mysql.com//mysql57-community-release-el7-7.noarch.rpm

2. 安装mysqlrepo

CentOS 7yum源中默认是没有mysql的。所以,为了解决这个问题我们首先下载安装mysqlrepo源。

rpm -ivh mysql57-community-release-el7-7.noarch.rpm 

查看/etc/yum.repos.d下有 mysql-community.repo和mysql-community-source.repo两个文件夹

3.安装

linux下安装mysql,会存在依赖关系,所以安装要先安装 mysql-server --> mysql-devel --> mysql

yum install mysql-server

 yum install mysql-devel

yum install mysql

rpm -qa|grep -i mysql 查看mysql安装的文件

4. mysql开关

service mysqld status 查看当前MySQL状态

 Active: inactive (dead):  mysql 未启动

service mysqld start  启动

Active: active (running) :启动状态

service mysqld stop  停止

service mysqld restart     重启 

5. 设置开启启动

systemctl enable mysqld

mysql已经安装完了,但是不能远程连接

6.解决mysql无法登录的问题

 在/etc/my.cnf文件中添加skip-grant-tables(我放在放在最后)。

skip-grant-tables:跳过mysql的用户验证

重启数据库生效

一般不用这个方法;

7. 设置登录密码

因为刚安装好mysql没有设置密码,所以不管你怎么连接mysql,都说密码不对。有两种解决方案:

(1)  利用第6条方式进入mysql

(2)  此方法只是用与centos,先找到 /var/log/mysql.log日志,然后在mysql.log日志中找到  A temporary password is generated for root@localhost: <soIG6d!OW!P

此时初始密码为:<soIG6d!OW!P

mysql -u root -p 再输入密码

set password = password('root');

alter user 'root'@'localhost' identified by 'root';

都会报 错:ERROR 1819 (HY000): Your password does not satisfy the current policy requirements

这是密码策略问题;

set global validate_password_policy = 0;  修改密码策略为low或0都可以(验证最低)

set global validate_password_length = 1;修改密码长度为1(验证最低)

再修改密码

任选一条:

alter user 'root'@'localhost' identifed by 'root'; 或   set password = password('root");

 

mysql 密码策略

show variables like 'validate_password%';

如果你不执行上边set global的两条命令,那么修改密码 必须包含数字,字母包含大小写,标点符号,位数;

关于 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 的取值:
0/LOW:只验证长度;
1/MEDIUM:验证长度、数字、大小写、特殊字符;
2/STRONG:验证长度、数字、大小写、特殊字符、字典文件;
 

设置好密码后,还是无法远程连接数据库;

8. 解决远程客户端无法连接数据库问题

我用的阿里云服务器:首先需要开通3306端口(根据自己的要求设置,我的设置仅供参考);

然后在mysql数据库中执行 

mysql -u root -p    用有权限用户root登录

use mysql;      选择mysql库

select host,user from user;    查看mysql库中user表的host值(可进行连接访问的主机/IP名称)

update user set host = '%' where user = 'root';   修改host值(%是匹配所有host的主机的),也可以直接增加IP地址

flush privileges;   刷新mysql的系统权限相关表

四条命令;

9.重启mysql(命令去上边找);

 

 

 

 

 

 

 

 

 

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值