HBase要求安裝JDK。有關支持的JDK版本的信息 java
今後Apache下載鏡像列表中選擇一個下載站點。單擊建議的頂部連接。這將帶您進入HBase版本的鏡像。單擊名爲stable的文件夾,而後將以.tar.gz結尾的二進制文件下載到本地文件系統。暫時不要下載以src.tar.gz結尾的文件。git
解壓縮下載的文件,而後切換到新建立的目錄。spring
$ tar -xzvf hbase-1.2.6.1-bin.tar.gz
爲HBase設置Java目錄,並從conf文件夾打開hbase-env.sh文件。編輯JAVA_HOME環境變量,改變路徑到當前JAVA_HOME變量shell
#編輯/home/hbase-1.2.6.1/conf/hbase-env.sh #配置hbase-env.sh文件:把29行的註釋取消,配置虛擬機上面的Java地址 export JAVA_HOME=/usr/local/java/jdk1.7.0_79
編輯conf/hbase-site.xml,這是主要的HBase配置文件數據庫
<configuration> <property> <!-- 配置hbase存在位置--> <name>hbase.rootdir</name> <value>file:///home/pflm/HBase/HFiles</value> </property> <property> <!-- 配置hbase文件保存路徑--> <name>hbase.zookeeper.property.dataDir</name> <value>/home/pflm/HBase/zookeeper</value> </property> </configuration>
到此 HBase 的安裝配置已成功完成。能夠經過使用 HBase 的 bin 文件夾中提供 start-hbase.sh 腳本啓動 HBasevim
$ ./bin/start-hbase.sh
運行HBase啓動腳本,它會提示一條消息:HBase has startedwindows
starting master, logging to /usr/local/HBase/bin/../logs/hbase-tpmaster-localhost.localdomain.out
http:// localhost:16010
以查看HBase Web UI。要訪問HBase shell,必須導航進入到HBase的主文件夾。緩存
#進入shell /bin/hbase shell #列出HBase的全部表。 hbase(main):001:0> list TABLE
通用命令ruby
status: 提供HBase的狀態,例如,服務器的數量。 version: 提供正在使用HBase版本。 table_help: 表引用命令提供幫助 whoami: 提供有關用戶的信息。
HBase在表中操做的命令。服務器
create: 建立一個表。 list: 列出HBase的全部表。 disable: 禁用表。 is_disabled: 驗證表是否被禁用。 enable: 啓用一個表。 is_enabled: 驗證表是否已啓用。 describe: 提供了一個表的描述。 alter: 改變一個表。 exists: 驗證表是否存在。 drop: 從HBase中刪除表。 drop_all: 丟棄在命令中給出匹配「regex」的表
數據操縱語言
put: 把指定列在指定的行中單元格的值在一個特定的表。 get: 取行或單元格的內容。 delete: 刪除表中的單元格值。 deleteall: 刪除給定行的全部單元格。 scan: 掃描並返回表數據。 count: 計數並返回表中的行的數目。 truncate: 禁用,刪除和從新建立一個指定的表。
一、配置Linux的hostname
[root@CentOS124 hbase-1.2.6.1]# vie /etc/sysconfig/network NETWORKING=yes HOSTNAME=CentOS124 #名字隨便
這裏配置的hostname要Linux重啓才生效,爲了避免重啓就生效,咱們能夠執行:hostname CentOS124命令,暫時設置hostname
二、配置Linux的hosts,映射ip的hostname的關係
#映射ip的hostname的關係 [root@CentOS124 hbase-1.2.6.1]# vim /etc/host #查看hbase ip綁定是否成功 [root@CentOS124 hbase-1.2.6.1]# netstat -anp|grep 16010
三、配置訪問windows的hosts
#hbase 192.168.10.124 CentOS124
public class HbaseTest { public static Connection connection; public static Configuration configuration; static { configuration = HBaseConfiguration.create(); // 設置鏈接參數:HBase數據庫使用的端口 configuration.set("hbase.zookeeper.property.clientPort", "2181"); // 設置鏈接參數:HBase數據庫所在的主機IP configuration.set("hbase.zookeeper.quorum", "192.168.10.124"); // configuration.addResource("hbase-site.xml"); try { // 取得一個數據庫鏈接對象 connection = ConnectionFactory.createConnection(configuration); } catch (IOException e) { e.printStackTrace(); } } public static void main(String[] args) throws Exception { createTable("gazw", "id","name"); // deleteTable("gazw"); } public static void createTable(String tableName,String... cf1) throws IOException { Admin admin = connection.getAdmin(); //HTD須要TableName類型的tableName,建立TableName類型的tableName TableName tbName = TableName.valueOf(tableName); //判斷表述否已存在,不存在則建立表 if(admin.tableExists(tbName)){ System.err.println("表" + tableName + "已存在!"); return; } //經過HTableDescriptor建立一個HTableDescriptor將表的描述傳到createTable參數中 HTableDescriptor HTD = new HTableDescriptor(tbName); //爲描述器添加表的詳細參數 for(String cf : cf1){ // 建立HColumnDescriptor對象添加表的詳細的描述 HColumnDescriptor HCD =new HColumnDescriptor(cf); HTD.addFamily(HCD); } //調用createtable方法建立表 admin.createTable(HTD); System.out.println("建立成功"); } }
demo地址 https://gitee.com/qinxuewu/spring-cloud/tree/master/kafka-demo