CentOS-6.2+mysql-cluster7.2
配置数据库集群
- 管理(MGM)节点:这类节点的作用是管理MySQL Cluster内的其他节点,如提供 配置数据、启动并停止节点、运行备份等。由于这类节点负责管理其他节点的配置,应在启动其他节点之前首先启动这类节点。MGM节点是用命令“ndb_mgmd”启动的。
- 数据节点:这类节点用于保存 Cluster的数据。数据节点的数目与副本的数目相关,是片段的倍数。例如,对于两个副本,每个副本有两个片段,那么就有4个数据节点。不过没有必要设置多个副本。数据节点是用命令“ndbd”启动的。
- SQL节点:这是用来访问Cluster数据的节点。对于MySQL Cluster,客户端节点是使用NDB Cluster存储引擎的传统MySQL服务器。通常,SQL节点是使用命令“mysqld –ndbcl uster”启动的,或将“ndbcluster”添加到“my.cnf”后使用“mysqld”启动。
- 注释:在很多情况下,术语“节点”用于指计算机,但在讨论MySQL Cluster时,它表示的是进程。在单台计算机上可以有任意数目的节点,为此,我们采用术语“ Cluster主机”。
- 标准MySQL客户端:对于MySQL Cluster,它们与标准的(非Cluster类)MySQL没有区别。换句话讲,能够从用PHP、Perl、C、C++、Java、Python、Ruby等编写的现有 MySQL应用程序访问MySQL Cluster。
- 管理客户端:这类客户端与管理服务器相连,并提供了启动和停止节点、启动和停止消息跟踪(仅调试版本)、显示节点版本和状态、启动和停止备份等的命令。
mkdir -p /app/mysql-cluster/mysql-cluster
tar -zxvf mysql-cluster-gpl-7.1.22.tar.gz-C /app/mysql-cluster/
groupadd mysql
useradd -g mysql mysql
chown -R mysql:mysql /app/mysql-cluster/mysql-cluster/
cd mysql-cluster-gpl-7.1.22/
./configure --prefix=/app/mysql-cluster--with-plugins=partition,ndbcluster
./configure--prefix=/app/mysql-cluster --with-plugins=all (我采用的是这个)
Make&ake install
ln -s /app/mysql-cluster/libexec/ndb_mgmd/app/mysql-cluster/bin
cp /app/mysql-cluster/libexec/ndb_mgmd /etc/rc.d/init.d/ndb_mgmd
chkconfig --list
chmod +x /etc/init.d/ndb_mgmd
cp -fr ./ndb_mgm* /usr/local/bin/
/etc/init.d/ndb_mgmd start/etc/init.d/ndb_mgmd stop创建mysql-cluster配置文件vi config.ini[ndbddefault]NoOfReplicas=2DataMemory=80MIndexMemory=18M[tcp default]portnumber=1186[ndb_mgmd]hostname=192.168.10.11datadir=/app/mysql-cluster/mysql-cluster/[ndbd]hostname=192.168.10.12datadir=/app/mysql-cluster/data[ndbd]hostname=192.168.10.13datadir=/app/mysql-cluster/data[mysqld]hostname=192.168.10.12[mysqld]hostname=192.168.10.13[mysqld]
mkdir -p /app/mysql-cluster
cd /app/mysql-cluster/
ln -s /app/mysql-cluster /usr/local/
[email protected]:/srv/mysql-cluster-gpl-7.1.22.tar.gz./
tar zxvf mysql-cluster-gpl-7.1.22.tar.gz
./configure --prefix=/app/mysql-cluster --with-plugins=allmake&&make install
./scripts/mysql_install_db --user=mysql--datadir=/app/mysql-cluster/datagroupadd mysqluseradd -g mysql mysql./scripts/mysql_install_db --user=mysql--datadir=/app/mysql-cluster/data./scripts/mysql_install_db--user=mysql--datadir=/app/mysql-cluster/ndbdatacp ./support-files/my-large.cnf /etc/my.cnfln -s/app/mysql-cluster/libexec/ndbd /app/mysql-cluster/binchown -R mysql:mysql/app/mysql-cluster/ndbdatacp/app/mysql-cluster/libexec/ndbd /etc/rc.d/init.d/ndbdchmod +x /etc/rc.d/init.d/ndbd
cd /app/mysql-cluster
ln -s /app/mysql-cluster /usr/local
tar zxvf /root/mysql-cluster-gpl-7.1.17.tar.gzcd mysql-cluster-gpl-7.1.17sed -i '54761s/\$RM/\#\$RM/' ./configure./configure --prefix=/app/mysql-cluster --with-plugins=partition,ndbclustermakemake install./scripts/mysql_install_db --user=mysqlcp ./support-files/my-large.cnf /etc/my.cnfcp ./support-files/mysql.server /etc/rc.d/init.d/mysqldcd /app/mysql-clusterchown -R mysql:mysql varchmod +x /etc/rc.d/init.d/mysqldchkconfig --add mysqldecho"PATH=$PATH:/usr/local/mysql-cluster/bin" >>/etc/bashrcecho "exportPATH" >>/etc/bashrc#configure my.cnfsed -i '128a\default-storage-engine=ndb\nndbcluster\nndb-connectstring='$2'\n[mysql_cluster]\nndb-connectstring='ip''/etc/my.cnf
Mysql> updatemysql.user set password=PASSWORD("111111") whereuser="root";
FLUSH PRIVILEGES;