程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> MYSQL數據庫 >> 關於MYSQL數據庫 >> MySql節點管理安裝步驟

MySql節點管理安裝步驟

編輯:關於MYSQL數據庫
對大家推薦很好使用的MySql節點系統,像讓大家對MySql節點系統有所了解,然後對MySql節點系統全面講解介紹,希望對大家有用在向大家詳細介紹MySql節點之前,首先讓大家了解下MySql節點,然後全面介紹MySql節點,希望對大家有用。這篇文檔旨在介紹如何安裝配置基於2台服務器的MySQL集群。並且實現任意一台服務器出現問題或宕機時MySQL集群依然能夠繼續運行。

  安裝環境及軟件包:2台PCMySQL-6.0.0-alpha.tar.gzCentos5SerA:192.168.1.50SerB:192.168.1.8

  1、在SerA和SerB上安裝MySQL以下步驟需要在SerA和SerB上各做一次

  1. # mv MySQL-6.0.0-alpha.tar.gz /tmp/package
  2. # cd /tmp/package
  3. # groupadd MySQL
  4. # useradd -g mysql MySQL
  5. # tar -zxvf MySQL-6.0.0-alpha.tar.gz
  6. # rm -f MySQL-6.0.0-alpha.tar.gz
  7. # mv mysql-6.0.0-alpha MySQL
  8. # cd MySQL
  9. # ./configure --prefix=/usr/local --with-extra-charsets=complex --with-plugin-ndbcluster
  10. --with-plugin-partition --with-plugin-innobase --with-unix-socket-path=/usr/local/var/MySQL.sock
  11. # make && make install
  12. #ln -s /usr/local/libexec/ndbd /usr/bin
  13. #ln -s /usr/local/libexec/ndb_mgmd /usr/bin
  14. #ln -s /usr/local/libexec/ndb_cpcd /usr/bin
  15. #ln -s /usr/local/libexec/MySQLd /usr/bin
  16. #ln -s /usr/local/libexec/MySQLmanager /usr/bin
  17. #MySQL_install_db --user=MySQL

我用的是:MySQL-5.0.85-Linux-i686.tar.gz

二、安裝並配置MySQL節點

以下步驟需要在SerA和SerB上各做一次

1.配置管理MySQL節點配置文件:

  1. # mkdir /var/lib/MySQL-cluster
  2. # cd /var/lib/MySQL-cluster
  3. # vi config.ini
  4. 在config.ini中添加如下內容:
  5. [ndbd default]
  6. NoOfReplicas= 2
  7. MaxNoOfConcurrentOperations= 10000
  8. # Amount of memory required=(SizeofDatabase * NumberOfReplicas * 1.1 ) / NumberOfDataNodes
  9. DataMemory= 128M
  10. IndexMemory= 24M
  11. TimeBetweenWatchDogCheck= 30000
  12. DataDir=/var/lib/MySQL-cluster
  13. MaxNoOfOrderedIndexes= 512
  14. StartPartialTimeout=100
  15. StartPartitionedTimeout=100
  16. ArbitrationTimeout=5000
  17. TransactionDeadlockDetectionTimeout=5000
  18. HeartbeatIntervalDbDb=5000
  19. StopOnError=0
  20. [ndb_mgmd default]
  21. DataDir=/var/lib/MySQL-cluster
  22. [ndb_mgmd]
  23. Id=1
  24. HostName= 192.168.1.50
  25. [ndb_mgmd]
  26. Id=2
  27. HostName= 192.168.1.8
  28. [ndbd]
  29. Id= 3
  30. HostName= 192.168.1.50
  31. [ndbd]
  32. Id= 4
  33. HostName= 192.168.1.8
  34. [MySQLd]
  35. ArbitrationRank=2 (非常重要,全靠有它,才可以形成仲裁競爭,從而當另一個機子當了時,此機還可以有知道partion完整的節點)
  36. [MySQLd]
  37. ArbitrationRank=2
  38. [MySQLd] (多出的這項是留給恢復時使用的.)
  39. [MySQLd] (多出的這項是留給恢復時使用的.)
  40. [tcp default]
  41. PortNumber= 63132
  42. [separator]

2.配置通用my.cnf文件,MySQLd及ndbd,ndb_mgmd均使用此文件.

  1. # vi /etc/my.cnf
  2. 在my.cnf中添加如下內容:
  3. [MySQLd]
  4. datadir=/usr/local/var
  5. socket=/usr/local/var/MySQL.sock
  6. # Default to using old passWord format for compatibility with MySQL 3.x
  7. # clIEnts (those using the MySQLclIEnt10 compatibility package).
  8. old_passWords=1
  9. default-storage-engine=ndbcluster
  10. ndbcluster
  11. ndb-connectstring=192.168.1.50,192.168.1.8
  12. [ndbd]
  13. connect-string=192.168.1.50,192.168.1.8
  14. [ndb_mgm]
  15. connect-string=192.168.1.50,192.168.1.8
  16. [ndb_mgmd]
  17. config-file=/var/lib/MySQL-cluster/config.ini
  18. [MySQL_cluster]
  19. ndb-connectstring=192.168.1.50,192.168.1.8
  20. [MySQL.server]
  21. user=MySQL
  22. basedir=/usr/local/
  23. [MySQLd_safe]
  24. log-error=/var/log/MySQLd.log
  25. #pid-file=/var/run/mysqld/MySQLd.pid
  26. [MySQL]
  27. #socket=/usr/local/var/MySQL.sock
  28. [MySQLadmin]
  29. #socket=/usr/local/var/MySQL.sock
  30. [ndb_restore default] 保存退出後.

三.啟動管理MySQL節點SerA為:

  1. [root@SerA ~]# ndb_mgmd --ndb_nodeid=1
  2. Cluster configuration warning:
  3. arbitrator with id 1 and db node with id 3 on same host 192.168.1.50
  4. arbitrator with id 2 and db node with id 4 on same host 192.168.1.8
  5. arbitrator with id 5 has no hostname specifIEd
  6. arbitrator with id 6 has no hostname specifIEd
  7. Running arbitrator on the same host as a database node may
  8. cause complete cluster shutdown in case of host failure.

   注:在啟動時有一個警告提示說MySql節點1和3,2和4的arbitrator一樣,可能引起整個集群失敗。(可以不用放在心上)啟動管理MySQL節點SerB為:[root@SerB ~]# ndb_mgmd --ndb_nodeid=2.

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved