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

举报
方志朋 发表于 2018/12/22 15:50:09 2018/12/22
【摘要】 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

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

全部回复

上滑加载中

设置昵称

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

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

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