Openresty最佳案例 | 第6篇:OpenResty连接Mysql

举报
方志朋 发表于 2018/12/22 15:50:09 2018/12/22
1.1w+ 0 1
【摘要】 Centos系统下安装mysql,先下载mysql-community-release-el7-5.noarch.rpm,然后通过yum安装,安装过程一直确定【Y】即可。

centos 安装mysl

Centos系统下安装mysql,先下载mysql-community-release-el7-5.noarch.rpm,然后通过yum安装,安装过程一直确定【Y】即可。

image.png

安装成功后,重启mysql,并进入mysql数据库,给root用户设置一个密码,密码为“123”。

image.png

openresty连接mysql

lua-resty-mysql模块的官方文档地址: https://github.com/openresty/lua-resty-mysql

image.png

lua-resty-mysql模块是基于cosocket API 为ngx_lua提供的一个Lua MySQL客户端。它保证了100%非阻塞。

vim /usr/example/lua/test_mysql.lua,添加以下的代码:

image.png

image.png

image.png

image.png

在上面的代码中,展示了基本的创表、插入数据、修改数据、查询数据、删除数据的一些功能。

其中用到的lua-resty-mysql的一些API方法:

  • syntax: db, err = mysql:new() 创建一个mysql数据库连接对象

  • syntax: ok, err = db:connect(options) 尝试远程连接mysql

        host mysql的主机名

        port 端口

        database 数据库名

        user 用户名

        password 密码

        charset 编码

  • syntax: db:set_timeout(time) 设置数据库连接超时时间

  • syntax: ok, err = db:set_keepalive(max_idle_timeout, pool_size) 设置连接池

  • syntax: ok, err = db:close() 关闭数据库

  • syntax: bytes, err = db:send_query(query) 发送查询

lua-resty-mysql的一些关键的API方法,见https://github.com/openresty/lua-resty-mysql#table-of-contents

vim /usr/example/example.conf 在配置文件配置:

image.png

浏览器访问http://116.196.177.123/lua_mysql,浏览器显示以下的内容:

image.png

【声明】本内容来自华为云开发者社区博主,不代表华为云及华为云开发者社区的观点和立场。转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息,否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

作者其他文章

评论(0

抱歉,系统识别当前为高风险访问,暂不支持该操作

    全部回复

    上滑加载中

    设置昵称

    在此一键设置昵称,即可参与社区互动!

    *长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

    *长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。