MySQL存储过程相关

一、存储过程概念:

存储过程可以说是一个记录集吧,它是由一些T-SQL语句组成的代码块,这些T-SQL语句代码像一个方法一样实现一些功能(对单表或多表的增删改查),然后再给这个代码块取一个名字,在用到这个功能的时候调用他就行了。

二、MySQL常用导出导入功能指令

  • mysql常用导出数据的命令:

    1.mysql导出整个数据库:
    mysqldump -hhostname -uusername -ppassword databasename > backupfile.sql  
    mysqldump -hlocalhost -uroot hqgr> hqgr.sql (如果root用户没用密码可以不写-p,当然导出的sql文件你可以制定一个路径,未指定则存放在mysql的bin目录下)
    2.mysql导出数据库一个表:
      mysqldump -hhostname -uusername -ppassword database tablename> 导出的文件名
      mysqldump -hlocalhost -uroot hqgr t_ug_user> user.sql
    3.mysql导出一个数据库结构:
     mysqldump -hhostname -uusername -ppassword -d –add-drop-table databasename>d:hqgrstructure.sql
     -d 没有数据 –add-drop-table 在每个create语句之前增加一个drop table
    4.如果需要导出mysql里面的函数或者存储过程:
    mysqldump -hhostname -uusername -ppassword -ntd -R databasename > backupflie.sql
    mysqldump -hlocalhost -uroot -ntd -R hqgr > hqgr.sql
    其中的 -ntd 是表示导出存储过程;-R是表示导出函数

  • mysql常用导入数据的命令:

    1.mysql命令
      mysql -hhostname -uusername - ppassword databasename < backupfile.sql
    2.source命令
      mysql>source backupfile.sql
    

三、MySQL存储过程常用指令

查看存储过程状态信息:

show procedure status

修改存储过程的definer :

update mysql.proc set definer='root@localhost' where db='db_name'; 

修改sql security:

sql secuirty的值决定了调用存储过程的方式,取值 :definer或者invoker
definer:在执行存储过程前验证definer对应的用户如:root@192.168.2.%是否存在,以及是否具有执行存储过程的权限,若没有则报错
invoker:在执行存储过程时判断inovker即调用该存储过程的用户是否有相应权限,若没有则报错。

alter procedure pro_name sql security invoker; 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值