史上最详细的解决 Amoeba连接mysql出错 解决方案

今天配置mysql的主从复制 用到了Amoeba。从安装到启动服务,我深深的感受到这个世界的恶意。
首先是安装错误的解决,连接错误的兄弟可以直接往下拉。

安装错误

1.出现 JAVA_HOME environment variable is not set.
可是明明jdk已经安转成功了,java version 显示的也是正常的
说明 问题一定就出在amoeba的配置上面

[root@localhost bin]# ./amoeba start
Error: JAVA_HOME environment variable is not set.
[root@localhost bin]# java -version
openjdk version "1.8.0_102"
OpenJDK Runtime Environment (build 1.8.0_102-b14)
OpenJDK 64-Bit Server VM (build 25.102-b14, mixed mode)

解决:
修改/amoeba/bin/amoeba文件,在文件最开头直接写入JAVA_HOME环境变量

JAVA_HOME=/usr/local/src/java/jdk1.8.0_121

2 出现 The stack size specified is too small, Specify at least 228k
说明默认配置Xss比较小128k,启动时提示太小

The stack size specified is too small, Specify at least 228k
Error: Could not create the Java Virtual Machine.
Error: A fatal exception has occurred. Program will exit.

同样也是修改/amoeba/bin/amoeba文件,修改为256k即可

DEFAULT_OPTS="-server -Xms256m -Xmx256m -Xss256k"

这个时候,进入amoeba的目录下
执行

./bin/amoeba start

这里写图片描述

成功的出现以上画面,说明你的Amoeba已经安转成功了。
但是。。。。
你以为这样就结束了么,曾经我也是这么天真的认为的。
直到我花了三个小时才把Amoeba和mysql正常连接成功,希望我的解决方法对你有用
以下就是Amoeba连接错误的解决方案。
正常 在网上 我们可以搜到两种的解决方案。

连接错误

第一种
就是amoedb的dbServers.xml中的password哪一项被注释了,细心的小伙伴一定不会犯这种错误,这种解决方案就是去配置文件把注释消掉,并填写正确的password。
例如这位兄弟就是这个错误
http://blog.csdn.net/lwei_998/article/details/7321880

第二种
就是 数据库的访问权限没有对 amoeba 所在的服务器开启,导致amoeba无法访问数据库
解决方案:去主数据库和从数据库进入mysql 并输入以下命令

GRANT ALL PRIVILEGES ON *.* TO ‘root‘@‘%‘ IDENTIFIED BY ‘密码‘ WITH GRANT OPTION;

再次连接即可。

第三种
也就是楼主出现错误,错误提示是

java.util.NoSuchElementException: Could not create a validated object, cause: ValidateObject failed

一番折腾后,我觉得是jdk和emoeba之间有冲突(其实并不是),我用的是jdk1.8+emoeba2.2,所以重新换了个jdk1.7+emoeba2.2,还是出现同样的错误,我还不死心,又换了个jdk1.7+emoeba3.0.4,还是同样的错误。又一番测试,十分肯定 是emoeba的问题,数据库能成功连接emoeba,连接后就GG了,开始翻阅配置文件,一句话引起我的注意

<property name="schema">test</property>

这是什么,这是一个test数据库啊,我的databases里面有test数据库么,并没有。
于是将test修改为 jtdb
这里写图片描述

再次连接,成功!

  • 3
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 13
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 13
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值