安装版本

# lua -v
Lua 5.3.4 Copyright (C) 1994-2017 Lua.org, PUC-Rio
# apisix version
/usr/local/openresty//luajit/bin/luajit /usr/local/apisix/apisix/cli/apisix.lua version
3.5.0

报错日志:

2024/06/06 13:48:50 [error] 471284#471284: *552203 [lua] plugin.lua:135: load_plugin(): failed to load plugin [sfimplat-auth] err: /usr/local/apisix/apisix/plugins/sfimplat-auth.lua:12: module 'luasql.mysql' not found:
no field package.preload['luasql.mysql']
no file '/usr/local/apisix//deps/share/lua/5.1/luasql/mysql.lua'
no file '/usr/local/apisix//deps/share/lua/5.1/luasql/mysql/init.lua'
no file '/usr/local/apisix/luasql/mysql.lua'
no file '/usr/local/apisix/luasql/mysql/init.lua'
no file '/usr/local/openresty/site/lualib/luasql/mysql.ljbc'
no file '/usr/local/openresty/site/lualib/luasql/mysql/init.ljbc'
no file '/usr/local/openresty/lualib/luasql/mysql.ljbc'
no file '/usr/local/openresty/lualib/luasql/mysql/init.ljbc'
no file '/usr/local/openresty/site/lualib/luasql/mysql.lua'
no file '/usr/local/openresty/site/lualib/luasql/mysql/init.lua'
no file '/usr/local/openresty/lualib/luasql/mysql.lua'
no file '/usr/local/openresty/lualib/luasql/mysql/init.lua'
no file './luasql/mysql.lua'

解决方案

去网上找一个luasql包,注意:无需安装

在目录 /usr/local/apisix/deps/lib/lua/5.1 下创建目录 luasql
然后去 下载的luasql包 里找到文件 mysql.so ,移动至目录 /usr/local/apisix/deps/lib/lua/5.1/luasql 下 # mv mysql.so /usr/local/apisix/deps/lib/lua/5.1/luasql/

报错日志:

2024/06/06 14:23:21 [error] 485285#485285: *688915 [lua] plugin.lua:135: load_plugin(): failed to load plugin [sfimplat-auth] err: error loading module 'luasql.mysql' from file '/usr/local/apisix//deps/lib/lua/5.1/luasql/mysql.so':
libmysqlclient.so.21: cannot open shared object file: No such file or directory, context: init_worker_by_lua*

解决方案:

yum install -y mysql-devel

luasql使用问题记录:module 'luasql.mysql' not found的更多相关文章

  1. luarocks错误 require ‘luasql.mysql' 报module 'luasql.mysql' not found:

    错误: require 'luasql.mysql'stdin:1: module 'luasql.mysql' not found: no field package.preload['luasql ...

  2. mysql 去除重复 Select中DISTINCT关键字的用法 在使用mysql时,有时需要查询出某个字段不重复的记录,虽然mysql提供 有distinct这个关键字来过滤掉多余的重复记录只保留一条,但往往只用它来返回不重复记录的条数,而不是用它来返回不重记录的所有值。其原因是 distinct只能返回它的目标字段,而无法返回其它字段,这个问题让我困扰了很久,用distinct不能解决的话,

      在使用mysql时,有时需要查询出某个字段不重复的记录,虽然mysql提供 有distinct这个关键字来过滤掉多余的重复记录只保留一条,但往往只用它来返回不重复记录的条数,而不是用它来返回不重记 ...

  3. python导入模块报错:ImportError: No module named mysql.connector(安装 mysql)

    python的版本是 $ python --version Python 2.7.12 报错代码如下 import mysql.connector 报错信息是 ImportError: No modu ...

  4. [记录]一则清理MySQL大表以释放磁盘空间的案例

    一则清理MySQL大表以释放磁盘空间的案例 一.基本情况: 1.dbtest库554G,先清理st_online_time_away_ds(37G)表的数据,保留半年的数据: 1)删除的数据:sele ...

  5. Net Core平台灵活简单的日志记录框架NLog+Mysql组合初体验

    Net Core平台灵活简单的日志记录框架NLog初体验 前几天分享的"[Net Core集成Exceptionless分布式日志功能以及全局异常过滤][https://www.cnblog ...

  6. EF内容记录_EF连接Mysql版本问题

    EF连接MySQL可用版本,由于EF.MySQLConnection.mysql-for-visualstudio.VS版本.MySQL.Data.MySQL.Data.Entity版本问题较花时间, ...

  7. Windows Server 脚本记录Apache、Mysql 每分钟并发数

    打开windows server 计划任务管理器.定时执行如下的Bat脚本即可. 在D盘新建一个monitor文件夹,创建ApacheMysql.bat文件.内容如下: 在monitor文件夹中新建m ...

  8. 【错误记录】flask mysql 死锁

    最近使用flask-sqlalchemy时,进行测试的时候发现日志中打印出了MySql死锁错误,查看Mysql日志发现是因为有俩条sql出现了死锁: Deadlock found when tryin ...

  9. 记录一次MySQL两千万数据的大表优化解决过程,提供三种解决方案(转)

    问题概述 使用阿里云rds for MySQL数据库(就是MySQL5.6版本),有个用户上网记录表6个月的数据量近2000万,保留最近一年的数据量达到4000万,查询速度极慢,日常卡死.严重影响业务 ...

  10. 记录一次Mysql死锁排查过程

    背景 以前接触到的数据库死锁,都是批量更新时加锁顺序不一致而导致的死锁,但是上周却遇到了一个很难理解的死锁.借着这个机会又重新学习了一下mysql的死锁知识以及常见的死锁场景.在多方调研以及和同事们的 ...

随机推荐

  1. DASCTF 2024暑期挑战赛 RE

    DASCTF 2024暑期挑战赛 DosSnake 使用ghidra看反汇编 发现有XOR操作 在ida里面看汇编跟一下 字符DASCTF地址往下6个存放的数据与DASCTF字符串进行异或 A=[0x ...

  2. Electron32-ViteOS桌面版os系统|vue3+electron+arco客户端OS管理模板

    基于electron32+vue3 setup+pinia2桌面端os管理解决方案ElectronVue3OS. vue3-electron32-os全新原创Electron32+Vite5+Vue3 ...

  3. chrome 被hao123 劫持处理

    打开chrome,就进入baidu.com/xxx,烦人,浏览器被劫持了XXXX 查注册表hao123,删除找到的 进入chrome设置,修改主页新标签页 装杀毒软件,查杀病毒 修改chrome名 等 ...

  4. spark 先groupby 再从每个group里面选top n

    import spark.implicits._ val simpleData = Seq(("James","Sales","NY",90 ...

  5. containerd 拉取k8s.gcr.io/pause镜像i/o timeout

    由于k8s.gcr.io 需要连外网才可以拉取到,导致 k8s 的基础容器 pause 经常无法获取.k8s docker 可使用代理服拉取,再利用 docker tag 解决问题 docker pu ...

  6. Redis 入门 - 图形化管理工具如何选择,最全分类

    工欲善其事必先利其器,上一章Redis服务环境已经搭建完成,现在就需要一个趁手的工具,有个好工具可以做到事半功倍. Redis图形化管理工具五花八门,可供选择的很多,大家可以根据自己的需求应用场景进行 ...

  7. 微信js-sdk接入原理

    1.有一个微信公众号,并获取到该公众号的AppID和AppSecret. 其中AppID是可以对外公开的,AppSecret是该公众号的密钥,是需要绝对保密的 2.向微信服务器发送一个GET请求,获取 ...

  8. MyBatis——案例——查询-单条件查询-动态条件查询

    单条件查询-动态条件查询(choose(when,otherwise))      从多个条件中选择一个   choose(when,otherwise) 选择,类似于java中的Switch语句(w ...

  9. Rust字符串类型全解析

    字符串是每种编程语言都绕不开的类型, 不过,在Rust中,你会看到远比其他语言更加丰富多样的字符串类型. 如下图: 为什么Rust中需要这么多种表示字符串的类型呢? 初学Rust时,可能无法理解为什么 ...

  10. 如何创建一个Java游戏客户端

    创建一个完整的Java游戏客户端示例是一个相对复杂的任务,因为它通常涉及图形用户界面(GUI).事件处理.游戏逻辑等多个方面.为了简化,我将提供一个基于Java Swing的简单游戏客户端示例:一个简 ...