• mysql用户密码修改,用户添加、删除及设置权限


    一下的示例所用用户名和密码为:test,111111

    Mysql密码修改:

    Mysql修改密码需要root的权限,先执行mysql -uroot -p(密码);

    1)使用set password方式来修改账户密码:

    set password for ‘hzd’@’localhost’=password(‘newpassword’);

    2)使用phpMyAdmin修改,直接用SQL语句修改mysql数据库库的user表,不过别忘了使用PASSWORD函数, 插入用户用Insert命令,修改用户用Update命令,删除用Delete命令。

    mysql用户的添加和授权:

    1)insert方式添加:

    用户root权限登录mysql,新建test用户

     mysql>Insert into mysql.user(Host,User,Password) values(‘localhost’,’test’,password(‘111111’));

    刷新系统权限表  mysql> FLUSH PRIVILEGES;

    如果报错

    #1364 – Field ‘ssl_cipher’ doesn’t have a default value

    修改MySQL配置文件Linux系统为my.cnf,Windows系统为my.ini

    sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES

    修改为

    sql_mode=NO_ENGINE_SUBSTITUTION

    重启MySQL服务

    2)grant方式添加:

    用户root权限登录mysql,新建test用户

    mysql> grant usage on *.* to ‘test’@’localhost’ identified by ‘111111’;

    给test用户授权

    mysql>grant all on ‘hzd’.* to ‘test’@’localhost’ identified by “111111”;

    这句话的意思是:授权用户’test’(其密码为111111)可以任何主机登录,可对数据库’hzd’下的所有表进行所有操作。

    以下是几句关于授权的sql语句:

    grant语句的语法如下:

    grant privileges (columns) on what to user identified by “password” with grant option

    1)grant select,insert on ‘*’ to test@’local’ identified by ‘111111’;

    这句命令的意思是,授权用户“test”(其口令为“111111”)只能在本地localhost登录,可对任何的任何表(“*.*”前一个“*”代表任何数据库,后一个“*”代表在前个“*”的约束下的任何表)进行select,insert的操作。

    2)grant update,delete on scut.student to test@"%" Identified by "123";

    这句命令的意思是,授权用户“test”(其口令为“123”)可以任何主机登录,可对数据库"scut”下的表“student”进行update,delete的操作;

    3)grant all on len.* to ca@"%" Identified by "123456";

    这句命令的意思是,授权用户“ca”(其口令为“123456”)可以任何主机登录,可对数据库"len”下的所有表进行所有的操作;

    用户删除:

    drop user test@localhost

    mysql授权查看:
    select user from mysql.db where db="youdb"
    实例:查看len数据库已经授权的用户
    select user from mysql.db where db="len"

    查看用户权限:

    show grants for 你的用户

    比如:
    show grants for test@'localhost';

    数据库/数据表/数据列权限: Alter: 修改已存在的数据表(例如增加/删除列)和索引。
    Create: 建立新的数据库或数据表。
    Delete: 删除表的记录。
    Drop: 删除数据表或数据库。
    INDEX: 建立或删除索引。
    Insert: 增加表的记录。
    Select: 显示/搜索表的记录。
    Update: 修改表中已存在的记录。

    全局管理权限:

    file: 在MySQL服务器上读写文件。
    PROCESS: 显示或杀死属于其它用户的服务线程。
    RELOAD: 重载访问控制表,刷新日志等。
    SHUTDOWN: 关闭MySQL服务。

    特别的权限:

    ALL: 允许做任何事(和root一样)。
    USAGE: 只允许登录--其它什么也不允许做。

    附:权限 表列名称 相应解释 使用范围 
      select Select_priv 只有在真正从一个表中检索时才需要select权限 表 
      insert Insert_priv 允许您把新行插入到一个存在的表中 表 
      update Update_priv 允许你用新值更新现存表中行的列 表 
      delete Delete_priv 允许你删除满足条件的行 表 
      create Create_priv 允许你创建新的数据库和表 数据库、表或索引 
      drop Drop_priv 抛弃(删除)现存的数据库和表 数据库或表 
      reload Reload_priv 允许您告诉服务器再读入授权表 服务器管理 
      shutdown Shutdown_priv 可能被滥用(通过终止服务器拒绝为其他用户服务) 服务器管理 
      process Process_priv 允许您察看当前执行的查询的普通文本,包括设定或改变口令查询 服务器管理 
      file File_priv 权限可以被滥用在服务器上读取任何可读的文件到数据库表 服务器上的文件存取 
      grant Grant_priv 允许你把你自己拥有的那些权限授给其他的用户 数据库或表 
      references References_priv 允许你打开和关闭记录文件 数据库或表 
      index Index_priv 允许你创建或抛弃(删除)索引 表 
      alter Alter_priv 允许您改变表格,可以用于通过重新命名表来推翻权限系统 表

  • 相关阅读:
    Freemarker与Springmvc
    Freemarker与普通java
    Freemarker与Servlet
    跳舞的时间插件
    video标签播放视频
    字符串反转
    菲波拉契数列
    求所有子数组的和的最大值
    Spring AOP 5种通知与java动态代理
    线程维护日志队列
  • 原文地址:https://www.cnblogs.com/hzd2010/p/5681453.html
Copyright © 2020-2023  润新知