详解Mysql Proxy Lua内部结构体以及变量

移动开发 iOS
Mysql Proxy Lua内部结构体以及变量是本文要介绍的内容,主要是来学习Mysql Proxy的结构体和变量的应用,具体内容来看本文详解。

Mysql Proxy Lua内部结构体以及变量是本文要介绍的内容,主要是来学习Mysql Proxy结构体和变量的应用,具体内容来看本文详解。

Mysql ProxyLUA配置脚本中可以使用很多内部结构,其中最主要的是proxy,proxy提供了很多其他的结构体的接口,比如连接列表,后端服务器列表等等。像incoming packet这样的来自客户的结构体只是在脚本函数上下文中存在。

属性描述:

  1. connection:包含所有活动客户的连接(proxy.connection )列表. .   
  2. servers: 后台服务器的列表( proxy.backends)  
  3. queries:某一客户要发送到服务器端的查询  
  4. PROXY_VERSION :Mysql Proxy版本,十六进制。 

proxy.connection

proxy.connection 是只读对象,提供了当前活动连接的信息

proxy.connection 属性:

thread_id :连接的threadid

backend_ndx :当前连接所对应的后端服务器编号

proxy.backends

proxy.backends部分可写的,包含了后台服务器以及服务器meta信息的列表 ,你可以指定当前连接使用那个后台服务器。

proxy.backends 属性: 

address: 当前连接的主机名/端口组合

connected_clients:目前已连接的客户数

state:后台服务器的状态

proxy.queries

proxy.queries是一个要送往服务器的查询队列,

  1. The queue is not populated automatically, but if you do not explicitly populate the queue then queries are
  2. passed on to the backend server verbatim. Also, if you do not populate the query queue by hand,
  3. then the read_query_result() function is not triggered.
  4. The following methods are supported for populating the proxy.queries object.  

函数描述:

  1. append(id,packet) 添加到队尾。  
  2. prepend(id,packet) 插入队头。  
  3. len() 返回查询的队列长度 

以下常量Mysql Proxy用来客户指定操作:

  1. PROXY_SEND_QUERY 发送查询给服务器.   
  2. PROXY_SEND_RESULT 返回客户端查询结果   
  3. PROXY_IGNORE_RESULT 丢弃结果集  

包状态常量: 

  1. MYSQLD_PACKET_OK The packet is OK.   
  2. MYSQLD_PACKET_ERR The packet contains error information.   
  3. MYSQLD_PACKET_RAW The packet contains raw data.  

后台状态常量:

  1. BACKEND_STATE_UNKNOWN The current status is unknown.   
  2. BACKEND_STATE_UP The backend is known to be up (available).   
  3. BACKEND_STATE_DOWN The backend is known to be down (unavailable).   
  4. BACKEND_TYPE_UNKNOWN Backend type is unknown.   
  5. BACKEND_TYPE_RW Backend is available for read/write.   
  6. BACKEND_TYPE_RO Backend is available only for read-only use.   
  7.  
  8. 服务器命令常量:  
  9.  
  10. Constant Description   
  11. COM_SLEEP Sleep   
  12. COM_QUIT Quit   
  13. COM_INIT_DB Initialize database   
  14. COM_QUERY Query   
  15. COM_FIELD_LIST Field List   
  16. COM_CREATE_DB Create database   
  17. COM_DROP_DB Drop database   
  18. COM_REFRESH Refresh   
  19. COM_SHUTDOWN Shutdown   
  20. COM_STATISTICS Statistics   
  21. COM_PROCESS_INFO Process List   
  22. COM_CONNECT Connect   
  23. COM_PROCESS_KILL Kill   
  24. COM_DEBUG Debug   
  25. COM_PING Ping   
  26. COM_TIME Time   
  27. COM_DELAYED_INSERT Delayed insert   
  28. COM_CHANGE_USER Change user   
  29. COM_BINLOG_DUMP Binlog dump   
  30. COM_TABLE_DUMP Table dump   
  31. COM_CONNECT_OUT Connect out   
  32. COM_REGISTER_SLAVE Register slave   
  33. COM_STMT_PREPARE Prepare server-side statement   
  34. COM_STMT_EXECUTE Execute server-side statement   
  35. COM_STMT_SEND_LONG_DATA Long data   
  36. COM_STMT_CLOSE Close server-side statement   
  37. COM_STMT_RESET Reset statement   
  38. COM_SET_OPTION Set option   
  39. COM_STMT_FETCH Fetch statement   
  40. COM_DAEMON Daemon (MySQL 5.1 only)   
  41. COM_ERROR Error  

MySQL数据类型

  1. Constant Field Type   
  2. MYSQL_TYPE_DECIMAL Decimal   
  3. MYSQL_TYPE_NEWDECIMAL Decimal (MySQL 5.0 or later)   
  4. MYSQL_TYPE_TINY Tiny   
  5. MYSQL_TYPE_SHORT Short   
  6. MYSQL_TYPE_LONG Long   
  7. MYSQL_TYPE_FLOAT Float   
  8. MYSQL_TYPE_DOUBLE Double   
  9. MYSQL_TYPE_NULL Null   
  10. MYSQL_TYPE_TIMESTAMP Timestamp   
  11. MYSQL_TYPE_LONGLONG Long long   
  12. MYSQL_TYPE_INT24 Integer   
  13. MYSQL_TYPE_DATE Date   
  14. MYSQL_TYPE_TIME Time   
  15. MYSQL_TYPE_DATETIME Datetime   
  16. MYSQL_TYPE_YEAR Year   
  17. MYSQL_TYPE_NEWDATE Date (MySQL 5.0 or later)   
  18. MYSQL_TYPE_ENUM Enumeration   
  19. MYSQL_TYPE_SET Set   
  20. MYSQL_TYPE_TINY_BLOB Tiny Blob   
  21. MYSQL_TYPE_MEDIUM_BLOB Medium Blob   
  22. MYSQL_TYPE_LONG_BLOB Long Blob   
  23. MYSQL_TYPE_BLOB Blob   
  24. MYSQL_TYPE_VAR_STRING Varstring   
  25. MYSQL_TYPE_STRING String   
  26. MYSQL_TYPE_TINY Tiny (compatible with MYSQL_TYPE_CHAR)    
  27. MYSQL_TYPE_ENUM Enumeration (compatible with MYSQL_TYPE_INTERVAL)   
  28. MYSQL_TYPE_GEOMETRY Geometry   
  29. MYSQL_TYPE_BIT Bit   

小结:详解Mysql Proxy Lua内部结构体以及变量的内容介绍完了,希望通过本文的学习能对你有所帮助!

责任编辑:zhaolei 来源: 互联网
相关推荐

2011-08-30 12:49:59

Mysql ProxyLua分离

2024-05-14 09:19:42

内存ChipRank

2020-05-12 23:20:50

Tomcat内部结构

2011-08-30 11:09:26

MySQL ProxyLua

2011-09-08 17:44:47

GTK Widget

2010-04-12 15:17:40

dump Oracle

2010-09-25 15:59:54

JVM虚拟机

2011-08-30 10:08:38

Centos 5.2Mysql ProxyLUA

2011-08-30 09:59:47

Mysql ProxyLUA

2011-09-01 17:46:22

MySQL ProxyLua脚本

2011-08-30 10:28:11

MySQL ProxyLUA

2011-08-30 11:00:10

MySQL ProxyLua

2011-08-25 15:21:02

Lua字符串

2021-09-27 14:45:47

iPhone 13 P拆解维修

2009-08-13 15:03:58

C#结构体变量

2020-06-29 07:44:36

Redis

2022-08-19 14:38:52

C语言结构体struct

2009-08-13 14:46:03

C#结构体定义

2011-08-30 13:08:55

Mysql ProxyLua分离

2011-08-30 10:36:31

Ubuntu 9.04Mysql ProxyLua
点赞
收藏

51CTO技术栈公众号