MySQL默认函数功能是关闭的。
1.查看状态
mysql> show variables like '%func%';
+---------------------------------+-------+
| Variable_name | Value |
+---------------------------------+-------+
| log_bin_trust_function_creators | OFF |
+---------------------------------+-------+
1 row in set (0.00 sec)
2.开启函数功能
mysql> set global log_bin_trust_function_creators=1;
Query OK, 0 rows affected (0.00 sec)
3.创建函数,命令行下创建函数需要以 delimiter $$ 开头,并以 delimiter ; 结尾。否则mysql遇到分号就会提前结束报错。
4.备份函数
备份函数的话,只需要在mysqldump里面加上 -R 参数。
恢复的时候注意不能用source,用source恢复不了函数。
mysqldump -uroot -p123456 -R db > db.sql
mysql -uroot -p123456 db < db.sql