mysql中grant all privileges on赋给用户远程权限方式

 更新时间:2023年04月27日 09:08:15   作者:李在奋斗  
这篇文章主要介绍了mysql中grant all privileges on赋给用户远程权限方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教

mysql grant all privileges on赋给用户远程权限

mysql中grant all privileges on赋给用户远程权限

  • 改表法。

当你的帐号不允许从远程登陆,只能在localhost连接时。这个时候只要在mysql服务器上,更改 mysql 数据库里的 user 表里的 host 项,从localhost"改成%即可实现用户远程登录

在安装mysql的机器上运行:

1. mysql -u root -p  

2. select host,user from user where user='root';

3. update user set host = '%' where user='root' and host='localhost';  

4. select host, user from user where user='root';

  • 授权法
[root@aaa-server ~]# mysql -u root -p
MariaDB [(none)]> grant all privileges on *.* to root@'%' identified by '123' with grant option;
Query OK, 0 rows affected (0.00 sec)
MariaDB [(none)]> flush privileges;
Query OK, 0 rows affected (0.01 sec)
MariaDB [(none)]> flush privileges;
Query OK, 0 rows affected (0.00 sec)
MariaDB [(none)]> exit
Bye
  • 授权法。

例如,你想user使用mypwd从任何主机连接到mysql服务器的话。

在安装mysql的机器上运行:

1. GRANT ALL PRIVILEGES ON *.* TO 'user'@'%' IDENTIFIED BY 'mypwd' WITH
      GRANT OPTION;  
2.FLUSH   PRIVILEGES;
模板:
grant all privileges on 库名.表名 to '用户名'@'IP地址' identified by '密码' with grant option;
flush privileges;
  • 如果你想允许用户user从ip为192.168.1.4的主机连接到mysql服务器,并使用mypwd作为密码

在安装mysql的机器上运行:

 GRANT ALL PRIVILEGES ON *.* TO 'user'@'192.168.1.3' IDENTIFIED BY 'mypwd' WITH GRANT OPTION;   
 FLUSH   PRIVILEGES;

注意授权后必须FLUSH PRIVILEGES;否则无法立即生效。

高版本数据库不能按照grant all privileges on *.* to "root"@"%" identified by "xxxx";去修改用户权限

mysql> SELECT @@VERSION;
+-----------+
| @@VERSION |
+-----------+
| 8.0.14    |
+-----------+
1 row in set (0.00 sec)

高版本修改用户权限方法:

# 先创建远程用户,再授权
mysql> create user 'root'@'%' identified by  'password';
Query OK, 0 rows affected (0.03 sec)
mysql> grant all privileges on *.* to 'root'@'%' with grant option;
Query OK, 0 rows affected (0.01 sec)
mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)

再次查看发现有了root %

mysql>  select User,Host from user;
+------------------+-----------+
| User             | Host      |
+------------------+-----------+
| root             | %         |
| mysql.infoschema | localhost |
| mysql.session    | localhost |
| mysql.sys        | localhost |
| root             | localhost |
+------------------+-----------+
5 rows in set (0.00 sec)
————————————————

mysql授权语句说明grant all privileges、创建用户、删除用户

mysql的赋权语句:

grant all privileges on *.* to 'root'@'%' identified by '123456' with grant option;
  • all  privileges   ==》  表示所有的权限 ,增删改查权限全部都有了
  • *.*                     ==>  所有的数据库下面所有的表
  • root@%   ==》  所有数据库下面所有的表,所有的权限,全部都给root用户    % 表示root用户可以在任意机器上面进行连接登录
  • identified by '123456'   ==》远程登录连接的密码

刷新权限列表:flush   privileges

CREATE DATABASE 数据库名;
CREATE USER '用户名'@'%' IDENTIFIED BY '密码';    
GRANT all privileges ON 数据库名.* to '用户名'@'%' identified by '密码' WITH GRANT OPTION; 
flush privileges;

创建用户:CREATE USER 'jack'@'localhost' IDENTIFIED BY 'test123';

查看数据库中已经创建的用户:select user,host from user;--user表在数据库自带的、名字为mysql的数据库中

删除用户:delete from user where user = 'jack'; 

drop user ‘jack'@'%'; 

drop  user  会将该用户的信息全部删掉,而 delete  只会清除user表,其他的比如db表中的信息还是存在。

清除缓存:FLUSH PRIVILEGES

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • MySQL 的启动和连接方式实例分析

    MySQL 的启动和连接方式实例分析

    这篇文章主要介绍了MySQL 的启动和连接方式,结合实例形式分析了MySQL 启动方式和连接方式相关分类与操作技巧,需要的朋友可以参考下
    2020-05-05
  • phpstudy无法启动MySQL服务的完美解决办法

    phpstudy无法启动MySQL服务的完美解决办法

    学习php当然是要先安装好运行环境了,phpstyudy是一个运行php的集成环境,一键安装对新手很友好,下面这篇文章主要给大家介绍了关于phpstudy无法启动MySQL服务的完美解决办法,需要的朋友可以参考下
    2022-06-06
  • MySQL数据库实验之 触发器和存储过程

    MySQL数据库实验之 触发器和存储过程

    这篇文章主要介绍了MySQL数据库实验之 触发器和存储过程,通过掌握某主流DBMS支持的SQL编程语言和编程规范,规范设计存储过程展开详细介绍,感兴趣的朋友可以参考一下
    2022-06-06
  • Mysql索引详细介绍

    Mysql索引详细介绍

    这篇文章主要介绍了Mysql索引详细介绍,本文讲解了Mysql索引简介、设计索引的原则、如何使用索引等内容,需要的朋友可以参考下
    2014-07-07
  • MySQL优化及索引解析

    MySQL优化及索引解析

    这篇文章主要介绍了MySQL优化及索引解析,索引关系型数据库为了加速对表中行数据检索的数据结构,下面文章详细内容,需要的小伙伴可以参考一下
    2022-03-03
  • 解决mysql 组合AND和OR带来的问题

    解决mysql 组合AND和OR带来的问题

    这篇文章主要介绍了解决mysql 组合AND和OR带来的问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-11-11
  • MySQL数据库数据删除操作详解

    MySQL数据库数据删除操作详解

    本文我们将要学习的是作为删除数据使用的 “DELETE” 语句,“DELETE” 语句是用来删除数据的,它不能用来删除数据表本身。删除数据表使用的是 “DROP” 语句,而 “DELETE” 的作用只是用来删除记录而已
    2022-08-08
  • 如何在Windows中运行多个MySQL实例详解

    如何在Windows中运行多个MySQL实例详解

    这篇文章主要给大家介绍了关于如何在Windows中运行多个MySQL实例的相关资料,文中通过示例代码介绍的非常详细,对大家学习或者使用MySQL具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
    2019-09-09
  • MySQL中的驱动表与被驱动表及含义

    MySQL中的驱动表与被驱动表及含义

    使用join连接查询时如果有where条件,则MySQL执行器会根据查询条件过滤后的结果自动选择驱动表或被驱动表,这篇文章主要介绍了MySQL的驱动表与被驱动表,需要的朋友可以参考下
    2023-10-10
  • MySQL的23个需要注意的地方

    MySQL的23个需要注意的地方

    本文将为大家介绍的是MySQL数据库的23个特别注意事项,希望各位DBA能从中得到一些启发。
    2010-08-08

最新评论