http://gigaom.com/cloud/ex-facebookers-launch-memsql-to-make-your-database-fly/

-- 多主-从

http://www.mysqlops.com/2012/02/14/diy_multi_master_replication.html

http://www.cnblogs.com/liuhao/archive/2012/06/26/2563702.html

前facebook员工和前微软sql server工程师联合搞的一个分布式关系数据库

全部内存运行,将sql转化成速度更快的c++, 原理类似HipHop

有mysql api, 完全兼容mysql,没有学习使用成本

速度是mysql的30倍,每秒可处理150万的事务

官方网站:http://memsql.com/

参考文档:http://space.itpub.net/7607759/viewspace-733545

参考官方文档:http://developers.memsql.com/docs/1b/

http://developers.memsql.com/docs/1b/

-- ==============================================================

1  Install

wget http://download.memsql.com/814d3816f4084953833243fbf6c40d37/memsqlbin_amd64.tar.gz

tar xvfz memsqlbin_amd64.tar.gz

cd memsqlbin

./check_system

Warning: The version of CentOS that you're using (5.5) is too low.

MemSQL supports versions 6.0 and up.

/home/manchun/memsqlbin/objdir/usr/local/bin/memsql-g++: /lib64/libc.so.6: version GLIBC_2.11' not found (required by /home/manchun/memsqlbin/objdir/usr/local/bin/memsql-g++)

【解决办法】安装glibc

[root@banggo ~]#

wget http://ftp.gnu.org/pub/gnu/glibc/glibc-2.11.tar.gz

tar zxvf glibc-2.11.tar.gz

cd glibc-2.11

mkdir glibc-2.11-build

退出去在别的目录执行如下编译

/usr/src/glibc-2.11/configure --prefix=/usr/src/glibc-2.11/glibc-2.11-build/

error:

checking for .cfi_personality and .cfi_lsda pseudo-ops... no

configure: error: assembler too old, .cfi_personality support missing

【解决】参考网址

http://groups.google.com/group/rocks-clusters/browse_thread/thread/4c9298adecf5a335

http://www.caritasem.com/?p=162

I couldn't overcome that problem, and I'm wondering how I can, but I

said, "hey cuda only requires glibc-2.7, so lets compile that". I went

ahead, and installed it into /share/apps/glibc-2.7. So here comes the

main question: how can I link CUDA C to the glibc-2.7 installed in

/share/apps ? Years ago, Tim Carlson has said "It is really not

practical to try and upgrade glibc to 2.5. You might want to try

installing a glibc 2.5 from source in /share/apps/glibc-2.5 and then

use LD_PRELOAD to load that library in for you CMAQ binary.", but I

don't know how to use LD_PRELOAD, and I would appreciate any

guideline.

[换成2.8]

[root@banggo ~]#

wget http://ftp.gnu.org/pub/gnu/glibc/glibc-2.8.tar.gz

tar zxvf glibc-2.8.tar.gz

cd glibc-2.8

mkdir glibc-2.8-build

退出去在别的目录执行如下编译

/usr/src/glibc-2.8/configure --prefix=/usr/src/glibc-2.8/glibc-2.8-build/

make

make install

继续执行刚才的check_system

[root@banggo memsqlbin]# ./check_system

Warning: The version of CentOS that you're using (5.5) is too low.

MemSQL supports versions 6.0 and up.

/home/manchun/memsqlbin/objdir/usr/local/bin/memsql-g++: /lib64/libc.so.6: version 'GLIBC_2.11' not found (required by /home/manchun/memsqlbin/objdir/usr/local/bin/memsql-g++)

【】我不得不承认,我out了,仔细一看,原来需要centos 6.0的。

2 重新安装wget http://download.memsql.com/814d3816f4084953833243fbf6c40d37/memsqlbin_amd64.tar.gz

tar xvfz memsqlbin_amd64.tar.gz

cd memsqlbin

./check_system

报错如下:

Warning: The recommended configuration for MemSQL is at least 8 GB of RAM

【】解决方案:

let "mem_mb=$(free -m | sed  -n -e '/^Mem:/s/^[^0-9]*\([0-9]*\) .*/\1/p')";

if [ $mem_mb -lt 1000 ]; then

echo "Warning: The recommended configuration for MemSQL is at least 1 GB of RAM" 1>&2

invalid='1'

fi

[root@memdb memsqlbin]#  ./check_system

System check successful

3 登陆测试

[root@memdb memsqlbin]#  ./memsqld --port 3308

299691 2012-06-27 13:26:26 WARNING: SSE4.2 is not supported. Resorting to software CRC32C.

497378 2012-06-27 13:26:27 INFO: Log level changed to 0

120627 13:26:27 [ERROR] Fatal error: Please run MemSQL as a non-root user or specify -u root on the command line.

120627 13:26:27 [ERROR] Aborting

120627 13:26:27 [Note] ./memsqld: Shutdown complete

[root@memdb memsqlbin]#  ./memsqld -u root  --port 3308

292356 2012-06-27 13:26:54 WARNING: SSE4.2 is not supported. Resorting to software CRC32C.

480363 2012-06-27 13:26:55 INFO: Log level changed to 0

120627 13:26:55 [Note] ./memsqld: ready for connections.

Version: '1b'  socket: '/tmp/memsql.sock'  port: 3308

4 客户端使用

[root@memdb ~]# mysql -uroot -p -h 127.0.0.1 -P3308 --prompt="MemSQL> "

Enter password:

Welcome to the MySQL monitor.  Commands end with ; or \g.

Your MySQL connection id is 253

Server version: 5.5.8 MemSQL source distribution

Copyright (c) 2000, 2010, Oracle and/or its affiliates. All rights reserved.

This software comes with ABSOLUTELY NO WARRANTY. This is free software,

and you are welcome to modify and redistribute it under the GPL v2 license

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

MemSQL>

MemSQL> show databases;

+--------------------+

| Database           |

+--------------------+

| information_schema |

| memsql             |

+--------------------+

2 rows in set (0.00 sec)

MemSQL> use memsql;

Database changed

MemSQL> show tables;

Empty set (0.00 sec)

MemSQL> use information_schema;

Reading table information for completion of table and column names

You can turn off this feature to get a quicker startup with -A

Database changed

MemSQL> show tables;

+---------------------------------------+

| Tables_in_information_schema          |

+---------------------------------------+

| CHARACTER_SETS                        |

| COLLATIONS                            |

| COLLATION_CHARACTER_SET_APPLICABILITY |

| COLUMNS                               |

| COLUMN_PRIVILEGES                     |

| ENGINES                               |

| EVENTS                                |

| FILES                                 |

| GLOBAL_STATUS                         |

| GLOBAL_VARIABLES                      |

| KEY_COLUMN_USAGE                      |

| PARAMETERS                            |

| PARTITIONS                            |

| PLUGINS                               |

| PROCESSLIST                           |

| PROFILING                             |

| REFERENTIAL_CONSTRAINTS               |

| ROUTINES                              |

| SCHEMATA                              |

| SCHEMA_PRIVILEGES                     |

| STATISTICS                            |

| TABLES                                |

| TABLESPACES                           |

| TABLE_CONSTRAINTS                     |

| TABLE_PRIVILEGES                      |

| TRIGGERS                              |

| USER_PRIVILEGES                       |

| VIEWS                                 |

+---------------------------------------+

28 rows in set (0.00 sec)

MemSQL>

库名字很mysql一模一样啊,好惊奇啊,居然information_schema都有,而且里面的表名字也是一模一样的。

5 配置文件

看看memsql有没有跟mysql类似的配置文件呢,如下,果然找到了

[root@memdb memsqlbin]# ll /root/memsqlbin/memsql.cnf

-rw-r--r--. 1 1001 1001 1026  6月 18 20:07 /root/memsqlbin/memsql.cnf

6 用户管理测试

-- 创建新账号

MemSQL> grant all on *.* to tim@'%' identified by "tim"  with grant option;

Query OK, 1 row affected (0.01 sec)

MemSQL> exit

Bye

-- 重新登录,输入-p密码,进不去,不输入密码一回车,反倒进去了,怪哉!

[root@memdb memsqlbin]# mysql -utim -ptim -h 127.0.0.1 -P3308 --prompt="MemSQL> "

ERROR 1045 (28000): Access denied for user 'tim'@'localhost' (using password: YES)

[root@memdb memsqlbin]# mysql -utim -p -h 127.0.0.1 -P3308 --prompt="MemSQL> "

Enter password:

Welcome to the MySQL monitor.  Commands end with ; or \g.

Your MySQL connection id is 253

Server version: 5.5.8 MemSQL source distribution

Copyright (c) 2000, 2010, Oracle and/or its affiliates. All rights reserved.

This software comes with ABSOLUTELY NO WARRANTY. This is free software,

and you are welcome to modify and redistribute it under the GPL v2 license

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

MemSQL>

CREATE TABLE test (

id int(11) NOT NULL AUTO_INCREMENT,

excel_id varchar(100) NOT NULL,

rpt_id int(10) unsigned NOT NULL,

acc_std tinyint(3) unsigned NOT NULL,

prd_year int(10) unsigned NOT NULL,

prd_qtr tinyint(3) unsigned NOT NULL,

accumulate char(3) NOT NULL,

biz_cd tinyint(3) unsigned NOT NULL,

acc_cd tinyint(3) unsigned NOT NULL,

row_num int(10) unsigned NOT NULL,

col_num int(10) unsigned NOT NULL,

data_id int(10) unsigned NOT NULL,

data_trace mediumtext NOT NULL COMMENT 'trace信息',

trace_edit tinyint(1) NOT NULL,

upd_stmp timestamp NOT NULL DEFAULT '0000-00-00 00:00:00',

PRIMARY KEY (id)

) ;

mysql类似的数据库_MemSQL学习笔记-类似MySQL的数据库相关推荐

  1. 《MySQL实战45讲》——学习笔记01-03 “MySQL基本架构、日志系统、事务隔离“

    最近有新闻说"丁奇"炒股失败欠债,赶紧去极客时间买了他的<MySQL 实战 45 讲>以防下架,顺带重新系统的复习下MYSQL相关知识,记录下学习笔记: 本篇介绍: M ...

  2. 数据库原理学习笔记(二)数据库范式

    范式可以理解成在设计数据表时的规范级别,常见的范式有 第一范式(1NF) 第二范式(2NF) 第三范式(3NF) BC范式(BCNF) 第一范式 要满足第一范式,要求数据表的每个属性无法再分,也就是需 ...

  3. 【学习笔记】MySQL数据库高级版 - 索引优化、慢查询、锁机制等

    本文是尚硅谷周阳(阳哥)老师的MySQL高级篇视频的学习笔记.由于视频比较老,所以在高版本的MySQL中索引的地方做了优化,和视频的内容不完全一样,不过大体一致.从第四节锁机制开始的部分还没有整理. ...

  4. B站《一天学会 MySQL 数据库》学习笔记

    B站<一天学会 MySQL 数据库>学习笔记 老司机带我飞 职场十字诀:思考.计划.行动.总结.反思 ​关注他 4 人赞同了该文章 登录和退出MySQL服务器 # 登录MySQL $ my ...

  5. MySQL学习笔记 | 04 - MySQL数据库基本操作(增加、修改、删除、查看)

    MySQL学习笔记 | 01-为什么要使用数据库 MySQL学习笔记 | 02 - MySQL在Windows下的安装.配置.服务启动/停止.用户登录.查看版本号 MySQL学习笔记 | 03 - M ...

  6. 架构mysql_MySQL学习笔记之MySQL架构

    MySQL 最重要.最与众不同的特性是它的存储引擎架构,这种架构的设计将查询处理及其他系统任务和数据的存储/提取相分离.这种处理和存储分离的设计可以在使用时根据性能.特性,以及其他需求来选择数据存储的 ...

  7. oracle学习笔记 参数文件及数据库的启动和关闭

    oracle学习笔记 参数文件及数据库的启动和关闭 我们这节课把oracle的参数文件以及oracle的启动关闭讲一下 一)参数文件作用 先看oracle的参数文件 它由来已久了 我们知道oracle ...

  8. JDBC学习笔记——Java语言与数据库的鹊桥

    JDBC学习笔记--Java语言与数据库的鹊桥     JDBC(Java DataBase Connectivity):SUN公司提供的 一套操作数据库的标准规范,说白了就是用Java语言来操作数据 ...

  9. 数据库的学习笔记(一)

    简述: 本篇是数据库的学习笔记,仅供自己学习使用. 本文初发于 "曾晨de小站" zengchen233.cn,同步转载于此. 数据库和表的基本操作(一) 如何在指定数据库中创建表 ...

最新文章

  1. Vs code如何快速生成Verilog例化模板
  2. 以面向对象的思想实现数据表的添加和查询,JDBC代码超详细
  3. [Nginx]用Nginx实现与应用结合的訪问控制 - 防盗链
  4. 高中计算机结业考试总结,高中考试总结
  5. Linux九大哲学原理,Linux/Unix设计思想(全新阐释开源哲学,Jon “maddog” Hall作序推荐)...
  6. 几个国内外远程工作平台
  7. MySQL数据库MyISAM和InnoDB存储引擎的比较
  8. c++中的队列_C ++中的队列
  9. Jquery简单幻灯片
  10. 样条曲线(spline)
  11. mysql卸载删除注册表
  12. 小米平板2,Windows10与Android互刷教程,小米平板2 线刷教程
  13. CSS3中的边框图片
  14. Qos报文分类和标记原理与实验
  15. [翻译]Orchard如何工作
  16. Mysql表连接:内连接、外连接、交叉连接、自然连接真的都不一样吗
  17. 永磁同步电机自抗扰无位置传感器控制仿真,同时实现自抗扰和基于eso扩张状态观测器的无位置控制仿真
  18. 显示服务器事件,服务器事件查看
  19. 峰值预测性能指标PPTS(Peak percentage of threshold statistic)
  20. ckeditor KindEditor eWebEditor WQeditor FreeTextbox Tinymce 几款在线编辑器的比较(附各版本demo下载地址)

热门文章

  1. 小米手环无法模拟门卡_颜值与功能得到全面升级,小米手环4 NFC版上手体验
  2. IRCTC的完整形式是什么?
  3. winform中textbox属性Multiline=true时全选
  4. Android实现点击两次返回键退出
  5. 电脑系统越来越慢,怎么删除临时文件
  6. 局域网内Windows允许其他电脑指定IP访问本地mysql-8.0.23数据库
  7. python根据坐标点拟合曲线绘图
  8. 史上最全 yum 入门使用教程和常见错误解决办法
  9. android自动生成cardview,学习使用Material Design控件(三)使用CardView实现卡片效果...
  10. python编的俄罗斯方块游戏_python编写俄罗斯方块