- 论坛徽章:
- 0
|
这两天尝试用两台linux服务器安装mysql cluster,安装方法参照新闻组上某人的信息,如下:
######################### My Setup ####################################
Here is my setup:
I have two machines, Machine A and Machine B, that have requests and
updates to the db balanced by a router. There is one IP address that
clients use to access the db. The router distributes 50% of the
requests to Machine A and the remaining 50% to Machine B. Therefore,
the db on both Machine A and Machine B must be exactly the same at all
times. To achieve this I used MySQL Cluster.
I am running Redhat Linux 9 on both machines, and the machines are
physically identical.
Machine A ip = 10.0.2.39
Machine B ip = 10.0.2.38
########################### Installing ################################
I did the following on both machines:
- I installed MySql-Max (Linux (x86, glibc-2.2, static, gcc) 4.1.7
http://dev.mysql.com/get/Downloads/MySQL-4.1/mysql-max-4.1.7-pc-linux-i6
86.tar.gz/from/pick
- I extracted the tar file into the root folder, and installed the mysql
db by running the mysql_install_db script in the scripts directory. (In
the mysql directory type- ./scripts/mysql_install_db)
- I then created a config.ini file which I placed in the mysql
directory. I also created a my.cnf file which I placed in the
mysql/data directory.
################### Config.ini #######################################
[NDBD DEFAULT]
NoOfReplicas= 2
[MYSQLD DEFAULT]
[NDB_MGMD DEFAULT]
[TCP DEFAULT]
[NDB_MGMD]
HostName= 10.0.2.39 (10.0.2.38 on machine B)
[NDBD]
HostName= 10.0.2.38
DataDir= /root/mysql/data
[NDBD]
HostName= 10.0.2.39
DataDir= /root/mysql/data
[MYSQLD]
[MYSQLD]
[MYSQLD]
###################### My.cnf ##########################
The my.cnf file on both machines is:
[mysqld]
ndbcluster
###################### Starting the cluster #############
To start the cluster I did the following:
(please note that MySQL is installed in the /root/mysql directory)
Machine A:
- opened a terminal.
- typed- cd mysql
- typed- ./bin/ndb_mgmd
- starts the cluster manager
- typed- ./bin/ndbd --initial
- please note, only use the '--initial' parameter if it is the
first time you are starting the node.
- typed- ./bin/mysqld_safe --user=root &
- starts mysql. The terminal may stick here so use ctrl-c to get
a new prompt.
- typed- ./bin/mysql
- starts the mysql monitor.
- typed- use test;
- to use the test database.
Machine B:
- follow the same steps as Machine A:
###################### Testing the cluster #############
On Machine A:
- at the mysql monitor prompt
- type- use test;
- to use the test database.
- type- create table cluster_test (i int) engine=ndbcluster;
- this should create a clustered table called cluster_test.
On Machine B:
- at the mysql monitor prompt
- type- use test;
- type- show tables;
- this should show the cluster_test table created on Machine A.
Inserting
Subsequent inserts etc. can be done at the mysql monitor prompt.
Example:
On Machine A:
- type- insert into cluster_test values(314159);
On Machine B:
- type- select * from cluster_test;
- should display the value 314159.
##########################################################
以上是基本安装过程,我已经完成并测试通过.
于是作进一步测试:
1.在两台机器正常运行的时候直接拔掉机器B的网线
2.在机器A作一些数据增删操作
3.将机器B的网线插上,并查看数据内容,数据不能统一
4.将机器B的ndbd_mgm,ndbd,mysqld进程全部重启,查看数据库内容,仍然不能统一
这应该属于配置问题吧?请有这方面经验的大侠给点提示? |
|