Mysql 离线安装比要配置各种环境变量什么的总体来说比较麻烦,这次采用在线安装的方式要简单的多,会自动配置环境变量,就方便很多,记录一下其安装步骤,以便后期查找使用。
第一步:下载现在安装的rpm 根据你所安装的系统选择下载
下载地址:https://dev.mysql.com/downloads/repo/yum/
第二步:将下载好的rpm安装包上传到服务器
第三步:进行安装
- 安装rpm
[root@localhost ~]# yum -y install mysql80-community-release-el7-4.noarch.rpm
- 安装mysql 安装需要一些时间 耐心等待一下
[root@localhost ~]# yum -y install mysql-community-server
安装成功如下图:
- 启动mysql 采用守护进程的方式启动【后台启动】
[root@localhost ~]# systemctl start mysqld
- 检查一下 是否启动成功
[root@localhost ~]# systemctl status mysqld
如下图 代表启动成功
- 查看密码
由于采用在线安装的方式,我们并不知道密码是多少,安装的时候会生成一个临时的密码在/var/log/mysqld.log,我们用这个密码登录成功后,将密码修改后,再重新进行登录,才能正常的使用mysql
[root@localhost ~] # cat /log/mysqld.log
上面看起来不好找 我们可以进行过滤方便查看 此次密码为:FWFusD;R7E>/
[root@localhost ~] # grep "password" /var/log/mysqld.log
- 登录mysql
[root@localhost ~] # mysql -u root -p
- 重新修改密码【为了安全必须要修改密码后,才能正常使用】
mysql> alter user 'root'@'localhost' identified by 'root';
出现上图的话 就说明密码过于简单不符合其密码策略要求(长度至少是8位,必须包含数字,必须包含特殊字符)按照策略我们将密码修改为 rootP123.
mysql> alter user 'root'@'localhost' identified by 'rootP123.';
这样密码就修改成功了!
但是我们是平时都是测试学习用,采用这样策略修改的密码,比较难以记忆,还是采用比较简单的密码方便记忆和使用,那我们就需要修改密码的策略。
- 修改密码策略
我们先看一下现在的密码策略:
mysql> show variables like 'validate_password%';
那我们将validate_password.policy 改为LOW ,将长度改为4
mysql> set global validate_password.policy=0;
Query OK, 0 rows affected (0.00 sec)
mysql> set global validate_password.length=4;
Query OK, 0 rows affected (0.00 sec)
我们再重新设置简单的密码:
mysql> alter user 'root'@'localhost' identified by '1234';
如上图,代表密码修改成功,退出重新登录 试一下修改的密码是否能成功登录
退出mysql
mysql> exit
重新登录能登录上,密码就修改成功了
第四步:远程连接
远程连接发现出现下面的错误,说明服务器防火墙开启的,那么就需要关闭服务器的防火墙
解放方法:
1.查看防火墙状态 为running
[root@localhost ~]# firewall-cmd --state
2.关闭防火墙
[root@localhost ~]# systemctl stop firewalld.service
3.禁止firewall开机启动
[root@localhost ~]# systemctl disable firewalld.service
再查看状态 为 not running 则表示关闭成功
再进行连接时候 发现如下错误
就说明没有开启远程访问的权限
一般远程访问的话 为了安全起见不要直接用root进行远程访问,那我们新创建一个账号给它远程访问的权限。
user ‘lijilin’@’%’ 其中% 代表 所有IP都能访问,‘root’@‘localhost’ 其中localhost代表只能本地访问
mysql> create user 'lijilin'@'%' identified by '1234';
Query OK, 0 rows affected (0.01 sec)
mysql>
进行授权
mysql> grant all on *.* to 'lijilin'@'%';
解决方法:
1.查看用户信息
mysql> select host,user,plugin,authentication_string from mysql.user;
备注:host为 % 表示不限制ip localhost表示本机使用 plugin非mysql_native_password 则需要修改密码
ALTER USER ‘lijilin’@’%’ IDENTIFIED WITH mysql_native_password BY ‘1234’;
更新账号lijilin,host为% 的密码为1234
mysql> alter user 'lijilin'@'%' identified with mysql_native_password by '1234';
Query OK, 0 rows affected (0.01 sec)
再查看用户 账号 lijilin plugin为mysql_native_password 了就可以登录成功了
再用Navicat 进行连接 成功了!