美文网首页
centos7下安装Mysql安装、远程链接等操作

centos7下安装Mysql安装、远程链接等操作

作者: 原来不语 | 来源:发表于2019-01-06 19:35 被阅读0次

(一 )安装方式采用rpm

更新源  wget  https://dev.mysql.com/get/mysql80-community-release-el7-1.noarch.rpm
        sudo yum localinstall  mysql80-community-release-el7-1.noarch.rpm
        yum install mysql-community-server

然后启动 mysql
       systemctl start  mysqld.service

查看自动生成的密码

cat  /var/log/mysqld.log | grep 'password '

自动密码是随机生成的,而且不方便记忆,所以我们要进行密码修改

Mysql 5.7 的修改

mysql -u root -p
临时密码'
set password = password('123456')  ;#这个只有第一次时才能使用
或者
update user set authentication_string=password('newpassword') where user ='root';
该命令不适合于8.0

如果设置123456会提示秘密过于简单不符要求,如果要继续使用则需要修改两个参数

提示 :Your password does not satisfy the current policy requirements。    

执行
mysql>  set global validate_password_policy=0;
mysql> set global validate_password_length=1;

然后退出重启即可;

Mysql 8.0的修改

1.配置文件 MySQL 免密码登录

编辑 MySQL 的配置文件   

vim /etc/my.cnf

2.在文件末尾加上

skip-grant-tables  #跳过身份验证! 保存退出

3.重启mysql服务

systemctl restart  mysqld.service

4.免密登录mysql

mysql -u root -p
提示密码时 直接回车

5.选择 mysql 数据库

use mysql;  #mysql 数据库中存储了一张用户 user 表,所以修改user

在user 表中查看当前 root 用户的相关信息

select host, user, authentication_string, plugin from user; 

host 表示允许用户IP登录 %表示远程链接;
user 表示当前数据库的用户名;
authentication_string: 用户密码(在mysql 5.7.9以后废弃了password字段和password()函数);
plugin: 密码加密方式;

6.然后退出mysql

exit  或 quit 都可以

7.删除 /etc/my.cnf 文件最后的 skip-grant-tables并保存退出

vim /etc/my.cnf

8.重启 MySQL 服务

systemctl restart  mysqld.service

9.重新登录到 MySQL 上

mysql -u root -p

10.使用 ALTER 修改 root 用户密码

ALTER user 'root'@'localhost' IDENTIFIED BY '123456';
直接修改为简单密码时依旧会报错

提示: Your password does not satisfy the current policy requirements。
  1. 然后执行
mysql>  set global validate_password_policy=0;
ERROR 1193 (HY000): Unknown system variable 'validate_password_policy'

mysql> set global validate_password_length=1;
ERROR 1193 (HY000): Unknown system variable 'validate_password_length'

可以看到,修改 policy 和 length 的值,在MySQL5.7中可以但是,在MySQL8.0中无效。'validate_password_policy' 变量不存在。所以先要修改一个符合规则的用户名。

 ALTER user 'root'@'localhost' IDENTIFIED BY 'XxZ@123Z123';

然后执行下边;

mysql> set global validate_password.policy=0;
mysql>  set global validate_password.length=1;

然后重新修改想要的密码,然后保存退出!

ALTER user 'root'@'localhost' IDENTIFIED BY '123456';

重启服务器即可!


image.png

mysql 的远程连接

进入mysql

use  mysql
select Host,User from user;
image.png

如果想 指定固定ip链接,则将host换成ip地址

刷新权限

flush  privuleges;
或者
sudo service mysqld restart

若远程依旧不能链接则检查防火墙,并且尝试关闭

sudo service firewalld stop

genelog记录sql语句记录

set global general_log_file = "/tmp/general.log";    log日志保存位置
set global general_log = on;  开启 general_log
然后执行的所有sql语句都可以被记录,并且可以查询;

新建用户

create user 'newuser' @'%'   identified by 'password';  '%'代表允许远程链接;

set  global  validate_password_policy = 0;

set  global validate_password_length=1;

给新用户赋权

赋给所 有权限:
grant all privileges on  *.*  to 'newuser'@'%' identified by 'password'  with grant option;
*号表示任意表,任意库  @'%'表示任何主机都可以访问。
然后重新刷新权限

赋给插入,和查询权限

grant select, insert  on  *.*  to 'newuser'@'%' identified by 'password'  with grant option;

收回所有权限:

revoke all privileges on *.* from newuser;

刷新权限即可

重置root密码可以采用上边的修改密码方式进行修改

相关文章

网友评论

      本文标题:centos7下安装Mysql安装、远程链接等操作

      本文链接:https://www.haomeiwen.com/subject/bjzsrqtx.html