ubuntu系统mysql8.0安装&http_UDF插件安装

  1. 下载安装 mysql-apt-config_0.*.*_all.deb
[MYSQL官方下载deb](http://dev.mysql.com/downloads/repo/apt/.)
(往下翻翻,下载地址在上面这个网页底部)
下载一个mysql-apt-config_0..***_all.deb,并上传到ubuntu系统任意目录,
我一般会创建tool目录或download目录专门用来存放安装包。
  1. 进入tool目录,安装deb文件,用来配置默认系统的mysql版本,可以选择5.7或8.0
cd /home/admin/tool/
sudo dpkg -i mysql-apt-config_0.*.*-*_all.deb
  1. 更新系统安装源
sudo apt-get update
  1. 安装 Mysql服务。安装过程中会有提示要求选择加密方式(8.0新的加密方式sha,我选择旧的mysql_native_password),和输入密码。
sudo apt-get install mysql-server
  1. 检查命令
    mysql安装位置: whereis mysql
    重启mysql:service mysql restart 或 stop 或 start
    mysql安装信息:status
  1. 赋予权限以及分配远程访问

mysql5.7版本
开网络:sudo vi /etc/mysql/mysql.conf.d/mysqld.cnf 注释掉这行,如:#bind-address = 127.0.0.1 或者改为: bind-address = 0.0.0.0
登录终端:mysql -uroot -p
赋权限:grant all privileges on *.* to 'root'@'%' identified by 'password' with grant option; (%表示允许任意IP访问)
刷新:flush privileges;
查询用户:select host, user, authentication_string, plugin from user;
mysql8.0版本
开网络:不需要
登录终端:mysql -uroot -p
创建账号:CREATE USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY 'password'; 【mysql_native_password】这个是加密方式,8.0版本才有的。如果你的第三方客户端使用正确的密码依然无法登录,就有可能是这儿不对。8.0版本默认是sha加密方式,所以创建角色或赋权限时需手动指定。
赋权限:GRANT ALL privileges ON *.* TO 'root'@'%';
刷新:flush privileges;
查询用户:select host, user, authentication_string, plugin from user;

  1. 这一步开始为 Http_UDF做准备。开始安装 curl, 这个决定了 UDF被正确调用的关键一步。
sudo apt-get install libcurl4-openssl-dev
  1. 开始安装 http_UDF 插件 libHttpClient.so (插件是用C++编写的,目前只编译成liunx下使用的so文件, 编泽成windows的dll还没找到更好办法)

—查看当前共享库的存储路径:

	show variables like 'plugin_dir';

—将so库文件复制到共享路径下:

sudo cp libHttpClient.so /usr/lib/mysql/plugin/

—查询当前已导入的共享方法有哪些

select * from mysql.func;

—开始创建共享方法.

DROP FUNCTION IF EXISTS http_get;
DROP FUNCTION IF EXISTS Http_Post;
create function http_get RETURNS string soname 'libHttpClient.so'; 
create function http_post RETURNS string soname 'libHttpClient.so'; 

—查询分析器中调用共享方法

select Http_Get('http://www.csdn.com')  as Val;
select Http_Post('http://www.csdn.com','a=1&b=2')  as Val;

—有一个问题需要注意, 这个select是可以直接调用,但赋值给自定义参数时,需要转换一下才能显示结果:


set @a='';
select http_get('http://www.csdn.com') into @a;
select @a,CAST(@a as CHAR);

  1. 插件 libHttpClient.so下载:

https://download.csdn.net/download/xb191799981/10900763

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值