zoukankan      html  css  js  c++  java
  • mysql版本:'for the right syntax to use near 'identified by 'password' with grant option'

    查询mysql具体版本

    SELECT @@VERSION

    问题分析:mysql版本8.0.13,在给新用户授权时,发生了变化:

    1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'identified by  'password' with grant option' at line 5, Time: 0.000000s

    出错的语句:

    grant all privileges on *.* to 'root'@'172.16.10.203' identified by  'password' with grant option

    修正后的语句:分开三次执行

    #创建账户
    create user 'root'@'172.16.10.203' identified by  'password'
    
    #赋予权限,with grant option这个选项表示该用户可以将自己拥有的权限授权给别人
    grant all privileges on *.* to 'root'@'172.16.10.203' with grant option
    
    #改密码&授权超用户,flush privileges 命令本质上的作用是将当前user和privilige表中的用户信息/权限设置从mysql库(MySQL数据库的内置库)中提取到内存里
    flush privileges;
    

    原因分析 :此版的的mysql版本把将创建账户和赋予权限分开了。

    创建账户::create user ‘用户名’@‘访问主机’ identified by ‘密码’;
    赋予权限:grant 权限列表 on 数据库 to ‘用户名’@‘访问主机’ ;
    with grant option这个选项表示该用户可以将自己拥有的权限授权给别人

  • 相关阅读:
    省队集训 Day1 残缺的字符串
    省队集训 Day3 吴清华
    省队集训 Day3 陈姚班
    Java多线程中的join方法
    Java多线程同步机制之同步块(方法)——synchronized
    java-实用的sql语句
    java-分页之页面分页
    java下实现调用oracle的存储过程和函数
    java-MySQL存储过程
    MySQL存储过程
  • 原文地址:https://www.cnblogs.com/bruce1992/p/13945087.html
Copyright © 2011-2022 走看看