相关说明:

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 模块安装的更多相关文章

  1. linux下搭建lamp环境以及安装swoole扩展

    linux下搭建lamp环境以及安装swoole扩展   一.CentOS 6.5使用yum快速搭建LAMP环境 准备工作:先更新一下yum源  我安装的环境是:apache2.2.15+mysql5 ...

  2. windows下使用cpanm进行模块安装

    windows下使用cpanm进行模块安装 要放假了,突然想整理一下手头上的软件,突然发现perl的安装模块这个功能不能用. 弄了一下,使得windows 下 perl 的 cpanm能用,避免成天为 ...

  3. Linux下通过源码编译安装程序

    本文简单的记录了下,在linux下如何通过源码安装程序,以及相关的知识.(大神勿喷^_^) 一.程序的组成部分 Linux下程序大都是由以下几部分组成: 二进制文件:也就是可以运行的程序文件 库文件: ...

  4. Linux下非root用户如何安装软件

    Linux下非root用户如何安装软件 从windows转移到Linux的用户最开始总会有各种不适,因为这种不适最终放弃linux的不在少数.对于这类人只能说可惜,还没有领略到linux的美好就过早放 ...

  5. linux下Redis与phpredis扩展安装

    ++++++++++++++++++++++++++++++++++++++++++++++linux下Redis与phpredis扩展安装++++++++++++++++++++++++++++++ ...

  6. LINUX下中文语言包的安装(转)

    在安装盘上已经有各种语言包了,我们只需要找到他们,并安装就可以了.中文的是fonts-chinese-3.02-9.6.el5.noarch.rpmfonts-ISO8859-2-75dpi-1.0- ...

  7. linux下使用非root账号安装zabbix-client

    linux下使用非root账号安装zabbix-client使用非root账号rusky登录:[rusky@testServer]#tar zxvf zabbix-2.4.5.tar.gz #cd z ...

  8. [转]在linux下如何判断是否已经安装某个软件?软件安装在哪个目录

    <1>在linux下如何判断是否已经安装某个软件? ++++++++++++++++++++++++++++++++++++++++++ rpm -qa|grep 软件包 ++++++++ ...

  9. Linux下批量管理工具pssh安装和使用

    Linux下批量管理工具pssh安装和使用 pssh工具包 安装:yum -y install pssh pssh:在多个主机上并行地运行命令 pscp:把文件并行地复制到多个主机上 prsync:通 ...

随机推荐

  1. 2016 - 1 - 20 runloop学习(2)

    一:CFRunLoopModeRef 1. CFRunLoopModeRef带表RunLoop的运行模式 2. 一个Runloop可以有若干个mode,每个mode又包含若干个sourse,timer ...

  2. Emacs常用命令

    1.离开Emacs 挂起Emacs C-z 退出Emacs C-x C-c 2.文件 打开文件 C-x C-f 保存文件 C-x C-s 保存所有的文件 C-x s 将一个文件的内容插入到当前buff ...

  3. LeetCode---- 二叉树中,找出和为某值的所有路径

    Given a binary tree and a sum, find all root-to-leaf paths where each path's sum equals the given su ...

  4. 算法题----称硬币: 2n(并不要求n是2的幂次方)个硬币,有两个硬币重量为m+1, m-1, 其余都是m 分治 O(lgn)找出假币

    Description: 有2n个硬币和一个天平,其中有一个质量是m+1, 另一个硬币质量为m-1, 其余的硬币质量都是m. 要求:O(lgn)时间找出两枚假币 注意: n不一定是2的幂次方 算法1: ...

  5. python简介-copy

    首先python的老家https://www.python.org/ 原文http://www.runoob.com/python/python-intro.html Python 简介 Python ...

  6. 头文件定义和ARM指令

    2015.2.2星期一,阴天 内存管理:内存的分配和释放等静态和动态内存:主要是在释放方式上的区别 静态变量:编译时就已经确定,定义在函数外面自动变量:在程序运行时才能在栈中确定只读数据节:存放常量的 ...

  7. Redis - set类型操作

    set类型操作 设置操作:sadd:        sadd key value        给指定的key添加元素,重复返回0表示添加失败. srem:         srem key valu ...

  8. 13、SQL基础整理(流程控制begin……end)

    流程控制 begin ……end将一个语句块包含起来,中间可以写任何语句 格式: begin--开始 select *from student end--结束 if declare @bianlian ...

  9. HDU 3932

    http://acm.hdu.edu.cn/showproblem.php?pid=3932 一定范围的平面上给一些点,求到这些点的最大距离最小,和上一题的题意正好相反,稍微改一下就可以 这个问题又叫 ...

  10. 《你不知道的JavaScript》第一部分:作用域和闭包

    第1章 作用域是什么 抛出问题:程序中的变量存储在哪里?程序需要时,如何找到它们? 设计 作用域 的目的:为了更好地存储和访问变量. 作用域:根据名称查找变量的一套规则,用于确定在何处以及如何查找变量 ...