今天配置MySQL的主從復制 用到了Amoeba。從安裝到啟動服務,我深深的感受到這個世界的惡意。 首先是安裝錯誤的解決,連接錯誤的兄弟可以直接往下拉。 1.出現 java_HOME environment variable is not set. 可是明明jdk已經安轉成功了,java version 顯示的也是正常的 說明 問題一定就出在amoeba的配置上面
[root@localhost bin]# ./amoeba startError: JAVA_HOME environment variable is not set.[root@localhost bin]# java -versionopenjdk 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_1212 出現 The stack size specified is too small, Specify at least 228k 說明默認配置Xss比較小128k,啟動時提示太小
The stack size specified is too small, Specify at least 228kError: 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 
再次連接,成功!
新聞熱點
疑難解答