Atlas 是一个用于数据库负载均衡 ,读写分离的中间件,他实现了mysql 的语法,对于普通调用DAL 层来说的话,和mysql 是一样的。

一,安装
1,从源码安装 , 可以参考 http://blog.qixingzhong.com/2013/09/centos-install-atlas.html ,但是我装了半天还是不行,glib库搞不定,所以放弃了。

二,从rpm 安装
1,
一行命令搞定:
shell>> rpm -ivh Atlas-2.2.el5.x86_64.rpm

配置按照 https://github.com/Qihoo360/Atlas/wiki/Atlas%E7%9A%84%E5%AE%89%E8%A3%85 这里的配置,但是到了这一步
“./encrypt mypwd” ,说是找不到 libcrypto.so.6
我疯了,这又怎么了,我首先就安装了openssl
yum install openssl-devel

还是不行, 结果googel 之,牛人有了解决方案,

for 32 bit:
ln-sf /usr/lib/libssl.so.10 /usr/lib/libssl.so.6
ln-sf /usr/lib/libcrypto.so.10 /usr/lib/libcrypto.so.6
for 64bit
for 64 bit:
ln-sf /usr/lib64/libssl.so.10 /usr/lib64/libssl.so.6
ln-sf /usr/lib64/libcrypto.so.10 /usr/lib64/libcrypto.so.6
简单来说就是搞个链接,不然不能运行。

2, 运行起来:

查看日志发现:

ical) proxy-plugin.c.1454: I have no server backend, closing connection
2014-11-06 15:06:41: (critical) network-mysqld.c.1383: plugin_call(CON_STATE_READ_QUERY) failed

我有犯愁了,结果返现是mysql版本太低, 应该是5.6 ,所以换成了5.6.
把原来的mysql 找到,yum remove 掉。怎么找了,你yum install mysql ,他会提示你安装了那个包,然后你就yum remove **.rpm 具体的那个包。
5.6 安装好了,发现启动不起来,接着查看日志。 先找日志 find /-name mysqld.log ,

55 15957 [ERROR] InnoDB: auto-extending data file ./ibdata1 is of a different size 640 pages (rounded down to MB) than specified in the .cnf file: initial 768 pages, max 0 (relevant if non-zero) pages!
2014-11-06 15:49:55 15957 [ERROR] InnoDB: Could not open or create the system tablespace. If you tried to add new data files to the system tablespace, and it failed here, you should now edit innodb_data_file_path in my.cnf back to what it was, and remove the new ibdata files InnoDB created in this failed attempt. InnoDB only wrote those files full of zeros, but did not yet use them in any way. But be careful: do not remove old data files which contain your precious data!
2014-11-06 15:49:55 15957 [ERROR] Plugin 'InnoDB' init function returned error.
2014-11-06 15:49:55 15957 [ERROR] Plugin 'InnoDB' registration as a STORAGE ENGINE failed.
2014-11-06 15:49:55 15957 [ERROR] Unknown/unsupported storage engine: InnoDB
2014-11-06 15:49:55 15957 [ERROR] Aborting

原来是要找到原来安装mysql 的目录,删除几个文件夹就可以了,/var/lib/mysql, 一般是,不行就你find 一下。ibdata1  ib_logfile0  ib_logfile1 这个几个文件夹要删掉。在service mysqld start

3, 满心欢喜,可以运行了。用navicat 工具连上之后,发现,只能读,不能写。

需要设置 /usr/local/mysql-proxy/conf/test.cnf
proxy-backend-addresses = 172.16.13.100:3306
不要设置为127.0.0.1
4 ,看到了主数据库可以写入了,但是从数据库没有数据,我就纳闷了。原来是我2,原来还需要手动设置 mysql 的主从复制 ,这个是mysql 自己的功能。
http://dev.mysql.com/doc/refman/5.6/en/replication-howto.html

Atlas 安装运行随笔的更多相关文章

  1. MySQL中间件Atlas安装及使用

    简介 Atlas是由 Qihoo 360公司Web平台部基础架构团队开发维护的一个基于MySQL协议的数据中间层项目.它在MySQL官方推出的MySQL-Proxy 0.8.2版本的基础上,修改了大量 ...

  2. Atlas安装配置

    准备环境 192.168.1.1(Altas) 192.168.1.2(MySQL主) 192.168.1.3(MySQL从) 官方链接:https://github.com/Qihoo360/Atl ...

  3. Windows OS上安装运行Apache Kafka教程

    Windows OS上安装运行Apache Kafka教程 下面是分步指南,教你如何在Windows OS上安装运行Apache Zookeeper和Apache Kafka. 简介 本文讲述了如何在 ...

  4. 您的 PHP 似乎没有安装运行 WordPress 所必需的 MySQL 扩展”处理方法

    转自:http://www.xuebuyuan.com/1549022.html 这已经是一个老掉牙的问题了,部分人使用自己的服务器安装WordPress程序之后,会出现“您的 PHP 似乎没有安装运 ...

  5. Android中插件开发篇之----动态加载Activity(免安装运行程序)

    一.前言 又到周末了,时间过的很快,今天我们来看一下Android中插件开发篇的最后一篇文章的内容:动态加载Activity(免安装运行程序),在上一篇文章中说道了,如何动态加载资源(应用换肤原理解析 ...

  6. 用JSON-server模拟REST API(一) 安装运行

    用JSON-server模拟REST API(一) 安装运行 在开发过程中,前后端不论是否分离,接口多半是滞后于页面开发的.所以建立一个REST风格的API接口,给前端页面提供虚拟的数据,是非常有必要 ...

  7. Mac 下安装运行Rocket.chat

    最近花了一周的时间,复习了HTML.CSS.原生JS,并学习了Node.js.CoffeeScript.js.MongoDB,入了下门. 因为准备在Rocket.chat 上做二次开发,所以先下载和安 ...

  8. 在Linux上rpm安装运行Redis 3.0.4

    http://www.rpmfind.net搜索redis,找到redis3.0.4的rpm源选做 wget ftp://fr2.rpmfind.net/linux/remi/enterprise/6 ...

  9. Linux通过docker安装运行酷Q--用QQ骰子君进行跑团

    Linux通过docker安装运行酷Q 文:铁乐与猫 需求:和小伙伴周末进行愉快的TRPG跑团,需要在QQ讨论组上加了qq小号后,将qq小号用酷Q配合投骰的应用变成骰子君. 限制:我个人的云计算服务器 ...

随机推荐

  1. SqlServer存储过程(增删改查)

    * IDENT_CURRENT 返回为任何会话和任何作用域中的特定表最后生成的标识值. CREATE PROCEDURE [dbo].[PR_NewsAffiche_AddNewsEntity] ( ...

  2. Oracle Certified Java Programmer 经典题目分析(二)

    ...接上篇 what is reserved(保留) words in java? A. run B. default C. implement D. import Java 关键字列表 (依字母排 ...

  3. MVC 视图页对数字,金额 用逗号 隔开(数字格式化)

    cshtml页面代码: <tr> <th>@Model.BankName</th> <th>@Model.Month</th> <th ...

  4. [NOI2014]购票 「树上斜率优化」

    首先易得方程,且经过变换有 $$\begin{aligned} f_i &= \min\limits_{dist_i - lim_i \le dist_j} \{f_j + (dist_i - ...

  5. python网络编程--线程使用threading

    一:线程使用 线程使用有两种方法,一种是直接使用,二是通过继承threading.Thread类使用 二:函数式使用 函数式:调用thread模块中的start_new_thread()函数来产生新线 ...

  6. bootstrap表单按回车会自动刷新页面的问题

    想给form表单增加回车自动提交的功能 $('#password').keydown(function(event){ if (event.keyCode == 13) $('#login').cli ...

  7. 虚拟机 CentOS7 64

    下载地址:https://www.centos.org/download/ 下载完后以后使用虚拟机安装即可

  8. java基础65 JavaScript中的Window对象(网页知识)

    1.javaScript组成部分 1.EMCAScript(基本语法)    2.BOM(Browser Object Model):浏览器对象模型            浏览器对象模型中的浏览器的各 ...

  9. Form 源码

    1. is_valid如果返回值如果为真 证明验证成功 意味着self.is_bound为True 和 self.errors为False def is_valid(self): return sel ...

  10. COLLATE CHINESE_PRC_CI_AS_WS 的含义

    排序规则:COLLATE CHINESE_PRC_CI_AS_WS 的含义 在创建数据表时,常会用到这个. 含义当中,CHINESE_prc_ 是代表中国大陆.如果是台湾,则如:Chinese_TAI ...