MySQL群集双机模拟

Sty你别皱眉

Sty你别皱眉

2016-02-19 16:11

今天图老师小编给大家展示的是MySQL群集双机模拟,精心挑选的内容希望大家多多支持、多多分享,喜欢就赶紧get哦!

  硬件配置

  普通PC server * 2 (最小集群环境需要4台服务器)

  模拟环境

  red hat linux9 for x86 (or red hat AS 2以上版本),glibc-2.2, static, gcc

  MySQL版本4.1.12 binares

  mysql-max binary版本目前只支持linux、max os x和solaris

(本文来源于图老师网站,更多请访问http://m.tulaoshi.com/bianchengyuyan/)

  本方案不涉及从源代码编译安装

  主机 IP地址 用途

  ndb1_mgmd_sqld 1192.168.1.100 Ndb node1+mgmd node1+sqld node1

  ndb2_sqld2 192.168.1.200 Ndb node2+sqld node2

  Mgmd:management server

  sqld:mysql server

  ndb:storaged node (share-nothing,base in memory)

  安装

  从http://dev.mysql.com/downloads/mysql/4.1.html下载mysql-max-4.1.12-pc-linux-gnu-i686.tar.gz到/var/tmp

  Storage and SQL Node Installation

  在两台主机上执行如下过程

  shellgroupadd mysql

  shelluseradd -g mysql mysql

  shelltar zxfv mysql-max-4.1.12-pc-linux-gnu-i686.tar.gz

  shellcp -vr mysql-max-4.1.12-pc-linux-gnu-i686 /usr/local/mysql-max-4.1.12-pc-linux-gnu-i686

  shellcd /usr/local

  shellln -s mysql-max-4.1.12-pc-linux-gnu-i686 mysql

  shellcd mysql;scripts/mysql_install_db –user=mysql

  shellchown -R root .;chown -R mysql data;chgrp -R mysql .

  shellcp support-files/mysql.server /etc/rc.d/init.d/

  shellchmod +x /etc/rc.d/init.d/mysql.server

  shellchkconfig --add mysql.server

  shellchkconfig –level 3 mysql.server off

  Management Node Installation

  在主机ndb1_mgmd_sqld1上执行如下过程

  shellcd /var/tmp

  shelltar -zxvf mysql-max-4.1.12a-pc-linux-gnu-i686.tar.gz /usr/local/bin '*/bin/ndb_mgm*'

  Configuration

  Configuring the Storage and SQL Nodes

  在两台主机上执行如下过程:

  shellvi /etc/my.cnf

  [MYSQLD]             # Options for mysqld process:

  ndbcluster           # run NDB engine

  ndb-connectstring=192.168.1.100  # location of MGM node

  [MYSQL_CLUSTER]         # Options for ndbd process:

  ndb-connectstring=192.168.1.100  # location of MGM node

  Configuring the Management Node

  在主机ndb1_mgmd_sqld1上执行如下过程

  shellmkdir /var/lib/mysql-cluster

  shellcd /var/lib/mysql-cluster

  shellvi config.ini

  [NDBD DEFAULT]   # Options affecting ndbd processes on all data nodes:

  NoOfReplicas=2   # Number of replicas

  DataMemory=80M   # How much memory to allocate for data storage

  IndexMemory=52M  # How much memory to allocate for index storage

  # For DataMemory and IndexMemory, we have used the

  # default values. Since the "world" database takes up

  # only about 500KB, this should be more than enough for

  # this example Cluster setup.

  [TCP DEFAULT]

  [NDB_MGMD]        # Management process options:

  hostname=192.168.1.100 # Hostname or IP address of MGM node

  datadir=/var/lib/mysql-cluster  # Directory for MGM node logfiles

  [NDBD]             # Options for data node "A":

  # (one [NDBD] section per data node)

  HostName=192.168.1.100      # Hostname or IP address

  DataDir=/usr/local/mysql/data  # Directory for this data node's datafiles

  [NDBD]             # Options for data node "B":

  hostname=192.168.1.200      # Hostname or IP address

  datadir=/usr/local/mysql/data  # Directory for this data node's datafiles

  [MYSQLD]             # SQL node options:

  hostname=192.168.1.100     # Hostname or IP address

  # Directory for SQL node's datafiles

  # (additional mysqld connections can be

  # specified for this node for various

  # purposes such as running ndb_restore)

  [MYSQLD] # SQL node options:

  hostname=192.168.1.200     # Hostname or IP address

  # Directory for SQL node's datafiles

  # (additional mysqld connections can be

  # specified for this node for various

  # purposes such as running ndb_restore)

  第一次启动

  在主机ndb1_mgmd_sqld1上执行如下过程

  shell ndb_mgmd -f /var/lib/mysql-cluster/config.ini

  在两台主机上执行如下过程

  shellndbd –initial (note:--initial选项只能在第一次启动的时候使用)

  shell/etc/init.d/mysql.server start

  测试

  在主机ndb1_mgmd_sqld1上执行如下过程

  shell ndb_mgm

  -- NDB Cluster -- Management Client --

  ndb_mgm show

  Connected to Management Server at: localhost:1186

  Cluster Configuration

  ---------------------

  [ndbd(NDB)]   2 node(s)

  id=2  @192.168.0.100 (Version: 4.1.12, Nodegroup: 0, Master)

  id=3  @192.168.0.200 (Version: 4.1.12, Nodegroup: 0)

  [ndb_mgmd(MGM)] 1 node(s)

  id=1  @192.168.0.100 (Version: 4.1.12)

  [mysqld(SQL)]  1 node(s)

  id=4  (Version: 4.1.12)

  出现如上信息则表示mysql群集安装成功

  数据抽样测试

  在主机ndb1_mgmd_sqld1上执行如下过程

  shell/usr/local/mysql/bin/mysql -u root test

  MySQLDROP TABLE IF EXISTS City;

  CREATE TABLE City (

  ID int(11) NOT NULL auto_increment,

  Name char(35) NOT NULL default '',

  CountryCode char(3) NOT NULL default '',

  District char(20) NOT NULL default '',

  Population int(11) NOT NULL default '0',

  PRIMARY KEY (ID)

  ) ENGINE=NDBCLUSTER;

  MySQLINSERT INTO City VALUES (1,'Kabul','AFG','Kabol',1780000);

  INSERT INTO City VALUES (2,'Qandahar','AFG','Qandahar',237500);

  INSERT INTO City VALUES (3,'Herat','AFG','Herat',186800);

  在主机ndb2_sqld2上执行如下过程

  shell/usr/local/mysql/bin/mysql -u root mysql

  MySQSLselect * from City;

  如果成功显示数据信息,则表示集群已经成功启动

  Safe Shutdown and Restart

  在主机ndb1_mgmd_sqld1上执行如下过程

  shellndb_mgm -e shutdown (关闭集群服务器,storage node也会自动被关闭)

  在两台主机上执行如下过程

  shell/etc/init.d/mysql.server stop

  重新启动集群(顺序不能弄错)

  在主机ndb1_mgmd_sqld1上执行如下过程

  shell ndb_mgmd -f /var/lib/mysql-cluster/config.ini

  在两台主机上执行如下过程

  shell/usr/local/mysql/bin/ndbd

  启动完ndbd进程后启动sqld进程

  shell/etc/init.d/mysql.server start

  附:

(本文来源于图老师网站,更多请访问http://m.tulaoshi.com/bianchengyuyan/)

  config.ini中各部分解释

  [COMPUTER]: 定义群集主机.

  [NDBD]: 定义群集数据节点.

  [MYSQLD]: 定义Sql server节点.

  [MGM|NDB_MGMD]: Defines the management server node in the cluster.

  [TCP]: Defines TCP/IP connections between nodes in the cluster, with TCP/IP being the default connection protocol.

  [SHM]: Defines shared-memory connections between nodes. 在MySQL 4.1.9之前,这个功能必须使用--with-ndb-shm option编译进去, 从MySQL 4.1.9-max版本开始, it is enabled by default(默认为打开状态)

展开更多 50%)
分享

猜你喜欢

MySQL群集双机模拟

编程语言 网络编程
MySQL群集双机模拟

mysql双机热备份

编程语言 网络编程
mysql双机热备份

s8lol主宰符文怎么配

英雄联盟 网络游戏
s8lol主宰符文怎么配

Mysql 数据库双机热备的配置

编程语言 网络编程
Mysql 数据库双机热备的配置

教你怎样实现MySQL数据库双机热备份

MySQL mysql数据库
教你怎样实现MySQL数据库双机热备份

lol偷钱流符文搭配推荐

英雄联盟 网络游戏
lol偷钱流符文搭配推荐

教你怎样配置MySQL数据库双机热备份

MySQL mysql数据库
教你怎样配置MySQL数据库双机热备份

MySQL数据库中双机热备配置份过程

MySQL mysql数据库
MySQL数据库中双机热备配置份过程

lolAD刺客新符文搭配推荐

英雄联盟
lolAD刺客新符文搭配推荐

HTC钻石运行QQ死机怎么办

HTC钻石运行QQ死机怎么办

MySQL数据备份

MySQL数据备份
下拉加载更多内容 ↓