设为首页 加入收藏

TOP

MySQL消息存储引擎Q4M试玩(一)
2014-11-24 03:18:57 来源: 作者: 【 】 浏览:5
Tags:MySQL 消息 存储 引擎 Q4M 试玩

1. 安装
下载二进制包:
由于我的 mysql是5.1.48,从官网选择对应的包
http://q4m.kazuhooku.com/dist/old/
下载后解压
a. 将support-files/q4m-forward 拷贝到mysql安装目录/bin下
b. 将libqueue_engine.so 拷贝到mysql安装目录/lib/mysql/plugin下
执行:
$cat support-files/install.sql www.2cto.com
INSTALL PLUGIN queue SONAME 'libqueue_engine.so';
CREATE FUNCTION queue_wait RETURNS INT SONAME 'libqueue_engine.so';
CREATE FUNCTION queue_end RETURNS INT SONAME 'libqueue_engine.so';
CREATE FUNCTION queue_abort RETURNS INT SONAME 'libqueue_engine.so';
CREATE FUNCTION queue_rowid RETURNS INT SONAME 'libqueue_engine.so';
CREATE FUNCTION queue_set_srcid RETURNS INT SONAME 'libqueue_engine.so';
CREATE FUNCTION queue_compact RETURNS INT SONAME 'libqueue_engine.so';
这时候Queue引擎的状态还是disable,重启一下mysqld就变成active了。
root@test 05:50:59>show plugins;
+---------------------+--------+--------------------+---------------------+---------+
| Name | Status | Type | Library | License |
+---------------------+--------+--------------------+---------------------+---------+
| binlog | ACTIVE | STORAGE ENGINE | NULL | GPL |
| partition | ACTIVE | STORAGE ENGINE | NULL | GPL |
| CSV | ACTIVE | STORAGE ENGINE | NULL | GPL |
| MEMORY | ACTIVE | STORAGE ENGINE | NULL | GPL |
| MyISAM | ACTIVE | STORAGE ENGINE | NULL | GPL |
| MRG_MYISAM | ACTIVE | STORAGE ENGINE | NULL | GPL |
| InnoDB | ACTIVE | STORAGE ENGINE | ha_innodb_plugin.so | GPL |
| INNODB_TRX | ACTIVE | INFORMATION SCHEMA | ha_innodb_plugin.so | GPL |
| INNODB_LOCKS | ACTIVE | INFORMATION SCHEMA | ha_innodb_plugin.so | GPL |
| INNODB_LOCK_WAITS | ACTIVE | INFORMATION SCHEMA | ha_innodb_plugin.so | GPL |
| INNODB_CMP | ACTIVE | INFORMATION SCHEMA | ha_innodb_plugin.so | GPL |
| INNODB_CMP_RESET | ACTIVE | INFORMATION SCHEMA | ha_innodb_plugin.so | GPL |
| INNODB_CMPMEM | ACTIVE | INFORMATION SCHEMA | ha_innodb_plugin.so | GPL |
| INNODB_CMPMEM_RESET | ACTIVE | INFORMATION SCHEMA | ha_innodb_plugin.so | GPL |
| QUEUE | ACTIVE | STORAGE ENGINE | libqueue_engine.so | GPL |
+---------------------+--------+--------------------+---------------------+---------+
安装完毕,可以开始玩一把了。
2.
a.创建一个QUEUE表
root@test 05:52:29>create table t1 (a int , b varchar(100)) engine=queue;
Query OK, 0 rows affected (0.00 sec)
尝试插入一条数据: www.2cto.com
root@test 05:52:51>insert into t1 values (1,"sd");
ERROR 1598 (HY000): Binary logging not possible. Message: Statement cannot be logged to the binary log in row-based nor statement-based format
咿?插入失败,看样子Queue不支持binlog复制。好吧,重启把binlog禁用掉。再次执行
root@test 05:57:03>insert into t1 values (1,"sd");
Query OK, 1 row affected (0.01 sec)
这下插入成功了
root@test 05:57:13>insert into t1 values (2,"sda"),(3,"fio"),(4,"sas");
Query OK, 3 rows affected (0.00 sec)
---------------------////--------------------
以下内容有些是参考自官方的一个PPT。
------------------////-------------------------
那么QUEUE存储引擎和其他存储引擎(例如Innodb)有什么不同呢?
——不支持主键和索引
——支持insert/delete,但不支持update
——根据插入数据的顺序进行排序
——缓存select count(*)
另外该存储引擎使用了多个定义的函数来简化操作,堪称傻瓜式!!!!
针对每个连接有两种模式:OWNER模式和Non-Owner模式,在进入owner模式后,该
首页 上一页 1 2 下一页 尾页 1/2/2
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇解决mysql无法插入中文数据及插入.. 下一篇mysql图文安装教程

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容:

·你必须要弄懂的多线 (2025-12-25 04:22:35)
·如何在 Java 中实现 (2025-12-25 04:22:32)
·Java【多线程】单例 (2025-12-25 04:22:29)
·C++中智能指针的性能 (2025-12-25 03:49:29)
·如何用智能指针实现c (2025-12-25 03:49:27)