Linux 下 Lua 与 LuaSQL 模块安装
相关说明:
Lua最近在Nginx的web服务器上挺火的, 它的高效让更多开发喜欢上它, 本文讲述Lua与LuaSQL的安装. 在上几篇mysql-proxy的安装中有提到和操作过.
操作系统: Linux CentOS
相关软件: Lua LuaSQL
操作过程:
安装编译所需要的依赖包
1
|
yum-yinstall makegcc gcc-c++autoconf pkgconfig libtool mysql-devel ncurses ncurses-devel git
|
编译安装readline
1
2
3
4
|
cd
wget ftp://ftp.cwru.edu/pub/bash/readline-6.2.tar.gz
tar-xzvf readline-6.2.tar.gz
cdreadline-6.2
|
1
2
3
|
./configure
make
makeinstall
|
编译安装lua
1
2
3
4
|
cd
wget http://www.lua.org/ftp/lua-5.1.4.tar.gz
tar-xzvf lua-5.1.4.tar.gz
cdlua-5.1.4
|
1
2
3
4
5
6
|
#指定安装位置
sed-i's#^INSTALL_TOP=.*#INSTALL_TOP= /usr/local/lua-5.1.4#gi'./Makefile
#如果系统为64位请执行下面这条命令
#sed -i 's#^CFLAGS=.*#CFLAGS= -O2 -fPIC -Wall $(MYCFLAGS)#gi' ./src/Makefile
makelinux
makeinstall
|
1
2
3
|
mkdir/usr/local/lua-5.1.4/lib/pkgconfig
cp./etc/lua.pc/usr/local/lua-5.1.4/lib/pkgconfig
sed-i's#^prefix=.*#prefix= /usr/local/lua-5.1.4#gi'/usr/local/lua-5.1.4/lib/pkgconfig/lua.pc
|
编译安装LuaSQL
1
2
3
4
5
6
|
cd~
git clonehttps://github.com/keplerproject/luasql.git
cd luasql
sed-i's#^PREFIX =.*#PREFIX =/usr/local/lua-5.1.4#gi'./config
make
makeinstall
|
使用Lua连接Mysql
1
|
export LUA_CPATH="/usr/local/lua-5.1.4/lib/lua/5.1/?.so;"
|
编辑mysql.lua, 加入如下代码
1
2
3
4
5
6
7
8
9
10
11
12
13
|
localluasql=require"luasql.mysql"
localenv=assert(luasql.mysql())
localcon=assert(env:connect("mysql","root","","localhost",3306))
localcur=assert(con:execute("show databases"))
localrow=cur:fetch({},"a")
whilerow do
print(row.Database)
row=cur:fetch(row,"a")
end
cur:close()
con:close()
env:close()
|
执行:
Shell
1
2
3
4
5
|
[root@localhost~]# /usr/local/lua-5.1.4/bin/lua mysql.lua
information_schema
mysql
test
[root@localhost~]#
|
相关链接:
Lua: http://www.lua.org/
LuaSQL: http://www.keplerproject.org/luasql/
除非注明,波尔博客的文章均为原创, 转载请注明作者和出处, 谢谢合作.
博客网址: 波尔 Boll
本文链接地址: http://www.boll.me/archives/614
Linux 下 Lua 与 LuaSQL 模块安装的更多相关文章
- linux下搭建lamp环境以及安装swoole扩展
linux下搭建lamp环境以及安装swoole扩展 一.CentOS 6.5使用yum快速搭建LAMP环境 准备工作:先更新一下yum源 我安装的环境是:apache2.2.15+mysql5 ...
- windows下使用cpanm进行模块安装
windows下使用cpanm进行模块安装 要放假了,突然想整理一下手头上的软件,突然发现perl的安装模块这个功能不能用. 弄了一下,使得windows 下 perl 的 cpanm能用,避免成天为 ...
- Linux下通过源码编译安装程序
本文简单的记录了下,在linux下如何通过源码安装程序,以及相关的知识.(大神勿喷^_^) 一.程序的组成部分 Linux下程序大都是由以下几部分组成: 二进制文件:也就是可以运行的程序文件 库文件: ...
- Linux下非root用户如何安装软件
Linux下非root用户如何安装软件 从windows转移到Linux的用户最开始总会有各种不适,因为这种不适最终放弃linux的不在少数.对于这类人只能说可惜,还没有领略到linux的美好就过早放 ...
- linux下Redis与phpredis扩展安装
++++++++++++++++++++++++++++++++++++++++++++++linux下Redis与phpredis扩展安装++++++++++++++++++++++++++++++ ...
- LINUX下中文语言包的安装(转)
在安装盘上已经有各种语言包了,我们只需要找到他们,并安装就可以了.中文的是fonts-chinese-3.02-9.6.el5.noarch.rpmfonts-ISO8859-2-75dpi-1.0- ...
- linux下使用非root账号安装zabbix-client
linux下使用非root账号安装zabbix-client使用非root账号rusky登录:[rusky@testServer]#tar zxvf zabbix-2.4.5.tar.gz #cd z ...
- [转]在linux下如何判断是否已经安装某个软件?软件安装在哪个目录
<1>在linux下如何判断是否已经安装某个软件? ++++++++++++++++++++++++++++++++++++++++++ rpm -qa|grep 软件包 ++++++++ ...
- Linux下批量管理工具pssh安装和使用
Linux下批量管理工具pssh安装和使用 pssh工具包 安装:yum -y install pssh pssh:在多个主机上并行地运行命令 pscp:把文件并行地复制到多个主机上 prsync:通 ...
随机推荐
- for循环进阶
[引例] 输出一行10个“*” #include<cstdio> int main(){ printf("**********\n"); ; } 思考: (1)输出一行 ...
- Android布局— — —帧布局
帧布局,开发中很少使用,最简单的布局 添加多个控件,这些控件会按顺序在屏幕左上角重叠显示,且会透明显示之前控件的文本语法格式:<?xml version="1.0" enco ...
- poj1837 dp
//Accepted 2176 KB 47 ms //杠杆平横的条件:sum(c[i]*sum(g[j]))=0 // 所有的hook到原点的距离乘它上面挂着的物体的重量和的和为0 //对于一个hoo ...
- Javascript 的类型转换之减号
专职写JS已经有一个月了(对,没错就是一个月),从2014年11月24实习开始到今的2月份,我做的工作一直都是切图,另外跟着老板学产品,现在我一听到切图两字,我就想吐...所以我找了一份专职写JS的工 ...
- Python学习路程day6
shelve 模块 shelve模块是一个简单的k,v将内存数据通过文件持久化的模块,可以持久化任何pickle可支持的python数据格式 import shelve d = shelve.open ...
- DXUT初步理解
关于DXUT框架: DXUT(The DirectX Utility Library) 是建立在Direct3D9 和Direct3D10 API上的一个程序框架.它的目标是建立一个强大而容易使用的D ...
- PHP oracle分页
oracle分页 function getall($query, $start=0, $rows=-1) { $this->dbh = oci_connect('aaa','mmm'," ...
- 数据库 SQL优化
1.对查询进行优化,要尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的列上建立索引. 2.应尽量避免在 where 子句中对字段进行 null 值判断,否则将导致引擎放弃使用索 ...
- 《深入浅出Node.js》第1章 Node简介
@by Ruth92(转载请注明出处) 第1章 Node简介 一.Node的起源 高性能Web服务器的要点:事件驱动.非阻塞I/O. 选择JavaScript的原因:高性能.符合事件驱动.没有历史包袱 ...
- tcpdump抓包规则命令大全
下面的例子全是以抓取eth0接口为例,如果不加”-i eth0”是表示抓取所有的接口包括lo. 1.抓取包含10.10.10.122的数据包 # tcpdump -i eth0 -vnn host 1 ...