MySQL Cluster 搭建中对数据库表的创建

数据库 MySQL
以下的文章主要介绍的是MySQL Cluster(MySQL 集群) 搭建的实际操作步骤中的如何正确创建数据库表与安全关闭这两大步骤的介绍。

MySQL Cluster 是MySQL数据库主要适合于分布式计算环境的高实用、高冗余这两种版本。MySQL Cluster 采用了NDB Cluster 存储引擎,允许在一个 Cluster 中对MySQL服务器进行与运行。

在MyQL 5.0及以上的二进制版本中、以及与***的Linux版本兼容的RPM中提供了该存储引擎。(注意,要想获得MySQL Cluster 的功能,必须安装 mysql-server 和 mysql-max RPM)。
目前能够运行MySQL Cluster 的操作系统有Linux、Mac OS X和Solaris(一些用户通报成功地在FreeBSD上运行了MySQL Cluster ,但MySQL AB公司尚未正式支持该特性)。

MySQL Cluster(MySQL 集群) 搭建中如何创建数据库表

与没有使用 Cluster的MySQL相比,在MySQL Cluster内操作数据的方式没有太大的区别。执行这类操作时应记住两点:

表必须用ENGINE=NDB或ENGINE=NDBCLUSTER选项创建,或用ALTER TABLE选项更改,以使用NDB Cluster存储引擎在 Cluster内复制它们。如果使用mysqldump的输出从已有数据库导入表,可在文本编辑器中打开SQL脚本,并将该选项添加到任何表创建语句,或用这类选项之一替换任何已有的ENGINE(或TYPE)选项。

另外还请记住,每个NDB表必须有一个主键。如果在创建表时用户未定义主键,NDB Cluster存储引擎将自动生成隐含的主键。(注释:该隐含 键也将占用空间,就像任何其他的表索引一样。由于没有足够的内存来容纳这些自动创建的键,出现问题并不罕见)。

下面是一个例子:

在db2上,创建数据表,插入数据:

 

  1. [db2~]root# mysql -uroot test  
  2. [db2~]mysql> create table city(  
  3. [db2~]mysql> id mediumint unsigned not null auto_increment primary key,  
  4. [db2~]mysql> name varchar(20) not null default ''  
  5. [db2~]mysql> ) engine = ndbcluster default charset utf8;  
  6. [db2~]mysql> insert into city values(1, 'city1');  
  7. [db2~]mysql> insert into city values(2, 'city2'); 

在db3上,查询数据:

 

  1. [db3~]root# mysql -uroot test  
  2. [db2~]mysql> select * from city;  
  3. +-----------+  
  4. |id | name |  
  5. +-----------+  
  6. |1 | city1 |  
  7. +-----------+  
  8. |2 | city2 |  
  9. +-----------+ 

安全关闭

要想关闭 Cluster,可在MGM节点所在的机器上,在Shell中简单地输入下述命令:

[db1~]root# /usr/local/mysql/ndb_mgm -e shutdown运行以下命令关闭SQL节点的mysqld服务:

 

  1. [db2~]root# /usr/local/mysql/bin/mysqladmin -uroot shutdown 

其他

关于MySQL Cluster更多详细的资料以及备份等请参见MySQL手册的“MySQL Cluster(MySQL 集群)”章节。

 

 

责任编辑:佚名 来源: 互联网
相关推荐

2010-07-27 10:11:18

DB2数据库临时表

2009-06-11 13:16:57

JBPM数据库

2018-07-30 15:00:05

数据库MySQLJOIN

2010-05-24 13:14:19

创建MySQL

2010-05-13 15:43:34

MySQL宣布

2010-10-13 11:54:00

MySQL数据库表

2011-03-24 17:49:47

数据库恢复

2009-07-07 16:39:33

JSP数据库配置

2010-06-11 14:15:30

MySQL宣布

2018-05-14 16:14:56

数据库MySQL分表与分区

2011-05-18 13:16:21

MySQL数据库锁定

2009-02-02 13:16:23

修复数据表MySQL

2019-03-01 18:27:09

MySQL安装数据库

2010-10-15 16:20:59

MySQL数据库表

2011-08-03 14:02:02

数据库连接ACCESS

2011-07-27 14:41:43

JMeterMySQL

2023-09-14 23:05:57

​ ​MySQL数据库

2019-12-13 10:31:45

数据库SQLMySQL

2011-04-02 13:09:10

MySQLWebmin创建数据库

2010-05-12 14:19:48

点赞
收藏

51CTO技术栈公众号