程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> MYSQL數據庫 >> MySQL綜合教程 >> MySQL Cluster 搭建中對數據庫表的創建

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 集群)”章節。

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