zoukankan      html  css  js  c++  java
  • mysql 存储过程权限相关

    1.修改mysql 存储过程的definer
    修改mysql.proc表 的definer字段

      update mysql.proc set definer='root@%' where db='servant_591up'; UPDATE `mysql`.`proc` SET `definer`='root00@%' WHERE `db`='test' AND `name`='jjjj' AND `type`='PROCEDURE'; UPDATE `mysql`.`proc` SET `definer`='wtc_678869@%' WHERE `db`='servant_591up' AND `type`='PROCEDURE'; 


    2.修改sql security

      ALTER PROCEDURE www SQL SECURITY INVOKER ; ALTER PROCEDURE www SQL SECURITY DEFINER ;



    (1)MySQL存储过程是通过指定SQL SECURITY子句指定执行存储过程的实际用户;

    (2)如果SQL SECURITY子句指定为DEFINER,存储过程将使用存储过程的DEFINER执行存储过程,验证调用存储过程的用户是否具有存储过程的execute权限和DEFINER用户是否具有存储过程引用的相关对象的权限;

    (3)如果SQL SECURITY子句指定为INVOKER,那么MySQL将使用当前调用存储过程的用户执行此过程,并验证用户是否具有存储过程的execute权限和存储过程引用的相关对象的权限;

    (4)如果不显示的指定SQL SECURITY子句,MySQL默认将以DEFINER执行存储过程。

    淘宝、天猫、聚划算,商家短期打造爆款,秒杀、咚咚抢、优惠券,应有尽有,只有您想不到,没有做不到,开心购呀购(网址:www.kxgba.com,微信小程序搜索:开心购呀购),您的购物好助手!


    3.执行存储过程授权

      GRANT EXECUTE ON test.* TO 'wtc'@'%'; GRANT CREATE ROUTINE,ALTER ROUTINE, SELECT,CREATE, INSERT, UPDATE, DELETE, EXECUTE ON test.* TO 'wtc'@'%' IDENTIFIED BY '111111'


    CREATE ROUTINE : 创建存储过程的权限
    ALTER ROUTINE : 修改存储过程的权限

    4.删除用户

    REVOKE  all ON test.* FROM wtc@'%'


    DELETE FROM user WHERE User='user_name' and Host='host_name'; 

    FLUSH PRIVILEGES;

  • 相关阅读:
    angular4 跨域携带cookie的设置
    引入第三方库jquery
    禁用输入框 浏览器的自动补全功能
    Mongodb 安装和启动
    chrome浏览器的表单自动填充
    jquery原生对象
    js获取文档高度
    字体在各个浏览器中的样式问题
    jquery中的ajax参数说明
    JavaScript中的面向对象
  • 原文地址:https://www.cnblogs.com/woxingwoxue/p/4974991.html
Copyright © 2011-2022 走看看