SAP HANA数据库安装

Wesley13
• 阅读 575

SAP HANA数据库安装

分类: Sybase

2013-01-16 17:38:14

     SAP HANA是一个全新设计的内存数据库系统,他即支持传统的行式存储也支持列式存储。HANA数据库具有很高的性能、并发能力和可扩展性。HANA即可以支持OLTP应用也可以支持OLAP系统。

     我们都知道,制约数据库系统性能提升的关键瓶颈是I/O。为了解决这个问题,Oracle公司推出了Exadata,通过在存储层内置智能存储软件优化数据库层和存储层之间的I/O处理和传输。而SAP HANA数据库则另辟方向,充分利用多核处理器架构和计算机主存成本降低的趋势,在内存中存放数据,而传统的磁盘存储系统只是作为“持久层”,防止由于故障导致内存数据丢失。对于HANA来说,相关数据位于内存中,这样在访问数据时无需物理磁盘I/O操作,因此也就不存在磁盘“I/O”的瓶颈问题了。在这里并不会、也不想讨论SAP HANA和Oracle Exadata两种技术的优劣,我想这两种技术代表了两种方向,最终还需要由市场和客户评判。

     由于目前SAP HANA的公开资料很少,个人觉得很不利于产品的推广和使用,一个产品只有了解、使用的人多了,建立起很好的“生态系统”才能得到发展。对于数据库这样的基础平台软件更是如此。技术人员了解和学习一个产品都喜欢先装上它,然后使用它。本文将向SAP HANA的初学者介绍如何安装它。

1. 环境要求

  为了便于大家方便安装,在这里假设HAN安装在虚拟机环境下。虚拟机需要分配至少6G内存、2个逻辑CPU、至少30G磁盘空间。在虚拟机上安装Suse Linux Enterprise Server 11 SP1操作系统。

2. 安装SAP HANA数据库软件

   为了便于说明安装步骤,假设HANA的安装软件解压到/root/hana_media目录下。

   在安装HANA时,需要使用操作系统root账号执行相应的安装程序:

/root/hana_media/database1.0.26.linux/SAP_HANA_DATABASE/hdbinst 是命令行安装程序
/root/hana_media/database1.0.26.linux/SAP_HANA_DATABASE/hdbsetup 是图形化安装程序

    下面将介绍使用hdbinst的安装方法:

   (1) 把hana安装介质目录/root/hana_media/database1.0.26.linux/SAP_HANA_DATABASE/server目录下的HanaHwCheck.py文件改名:

        mv HanaHwCheck.py HanaHwCheck.py.bak         

        否则在执行安装程序时(hdbinst)会报如下错误:
SAP-DB-01:~/hana_media/database1.0.26.linux/SAP_HANA_DATABASE # ./hdbinst
SAP HANA Database kit detected.
ERR: Installation failed
ERR:   Checking system requirements failed
ERR:     Performing HANA platform check script failed
INFO:       Starting external program /usr/bin/python
INFO:         Command line is: /usr/bin/python /root/hana_media/database1.0.26.linux/SAP_HANA_DATABASE/server/HanaHwCheck.py
INFO:         Output line 1:
INFO:         Output line 2: performing Hardware check......
INFO:         Output line 3:
INFO:         Output line 4: System Manufacturer            VMware, Inc.              not supported
INFO:         Output line 5: System Product Name            VMware Virtual Platform   not supported
INFO:         Output line 6: CPU Model                      CPU                       not supported
INFO:         Output line 7: OS                             SLES 11 SP 1              OK       
INFO:         Output line 8: Memory Total                   4096 MB                   OK       
INFO:         Output line 9: Core count                     0                         OK       
INFO:         Output line 10: Hyper-threading                Activated                 OK       
INFO:         Output line 11: Numa functionality             Activated                 OK       
INFO:         Output line 12:
INFO:         Output line 13: Hardware check failed!!
INFO:         Output line 14:
INFO:         Program terminated with exit code 255

    (2) 用root执行./hdbinst,然后按照提示输入下述信息:

SAP HANA Database Installation Manager - Database Installation 1.00.26.360533
*****************************************************************************

Enter System Id: HDB
Enter Instance Number [00]: 01
Enter Installation Path [/usr/sap]:
Enter System Administrator (hdbadm) Password:  yourpassword
Confirm System Administrator (hdbadm) Password:  yourpassword
Enter System Administrator Home Directory [/usr/sap/HDB/home]:
Enter System Administrator Login Shell [/bin/sh]:
Enter System Administrator User Id [1000]:
Enter Group Id (sapsys) [79]:
Enter Location of Data Volumes [/usr/sap/HDB/global/hdb/data]:
Enter Location of Log Volumes [/usr/sap/HDB/global/hdb/log]:
Enter Password of Database User SYSTEM: Lion12345
Confirm Password of Database User SYSTEM: Lion12
Restart instance after machine reboot [yN]: y

Checking installation...
Preparing package "Python Support"...
Preparing package "Python Runtime"...
Preparing package "Product Manifest"...
Preparing package "Binaries"...
Preparing package "Lexicon"...
Preparing package "Languages"...
Preparing package "Installer"...
Preparing package "Ini Files"...
Preparing package "Documentation"...
Preparing package "DAT Languages"...
Creating System...
Extracting software...
Installing package 'Python Support' ...
Installing package 'Python Runtime' ...
Installing package 'Product Manifest' ...
Installing package 'Binaries' ...
Installing package 'Lexicon' ...
Installing package 'Languages' ...
Installing package 'Installer' ...
Installing package 'Ini Files' for Installation Type SAP HANA...
Installing package 'Documentation' ...
Installing package 'DAT Languages' ...
Creating System...
Starting SAP HANA Database system...

     我们看到,安装hana数据库还是比较简单的,按照提示去做即可。此外,如果是搭建学习环境,就接受缺省值即可。

3. 使用HDB管理HANA数据库的启动和停止

    使用hdbinst安装成功后,会创建一个操作系统账号hdbadm和一个组sapsys。HANA数据库的管理需要使用这个账号。

    (1) 停止HANA数据库

     a.  如果是root用户,执行su - hdbadm  

     b.  cd $DIR_INSTANCE

        注意,如果执行su - hdbadm之后,会自动进入这个目录,不过如果由于其他原因进入了其他目录,可以使用这种方法进入到这个目录中。

     c. 执行 ./HDB stop 停止数据库

        在执行上面命令后,会输出如下信息:

SAP-DB-01:/usr/sap/HDB/HDB00> ./HDB stop
hdbdaemon will wait maximal 300 seconds for NewDB services finishing.
Stopping instance using: /usr/sap/HDB/SYS/exe/hdb/stopsap HDB00 sap-db-01

Stopping the SAP instance HDB00
----------------------------------
 Shutdown-Log is written to /usr/sap/HDB/home/stopsap_HDB00.log
 Instance on host SAP-DB-01 stopped
 Waiting for cleanup of resources.............
hdbdaemon is stopped.

     (2) 启动HANA数据库

     a.  如果是root用户,执行su - hdbadm  

     b.  cd $DIR_INSTANCE

        注意,如果执行su - hdbadm之后,会自动进入这个目录,不过如果由于其他原因进入了其他目录,可以使用这种方法进入到这个目录中。

     c. 执行 ./HDB start 启动HANA数据库

        在执行上面命令后,会输出如下信息:

SAP-DB-01:/usr/sap/HDB/HDB00> ./HDB start
Starting instance using: /usr/sap/HDB/SYS/exe/hdb/startsap HDB00 sap-db-01

Starting SAP Instance HDB00
------------------------------
 Startup-Log is written to /usr/sap/HDB/home/startsap_HDB00.log
 Instance Service on host SAP-DB-01 started
 Instance on host SAP-DB-01 started

点赞
收藏
评论区
推荐文章
blmius blmius
3年前
MySQL:[Err] 1292 - Incorrect datetime value: ‘0000-00-00 00:00:00‘ for column ‘CREATE_TIME‘ at row 1
文章目录问题用navicat导入数据时,报错:原因这是因为当前的MySQL不支持datetime为0的情况。解决修改sql\mode:sql\mode:SQLMode定义了MySQL应支持的SQL语法、数据校验等,这样可以更容易地在不同的环境中使用MySQL。全局s
皕杰报表之UUID
​在我们用皕杰报表工具设计填报报表时,如何在新增行里自动增加id呢?能新增整数排序id吗?目前可以在新增行里自动增加id,但只能用uuid函数增加UUID编码,不能新增整数排序id。uuid函数说明:获取一个UUID,可以在填报表中用来创建数据ID语法:uuid()或uuid(sep)参数说明:sep布尔值,生成的uuid中是否包含分隔符'',缺省为
待兔 待兔
4个月前
手写Java HashMap源码
HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程22
Jacquelyn38 Jacquelyn38
3年前
2020年前端实用代码段,为你的工作保驾护航
有空的时候,自己总结了几个代码段,在开发中也经常使用,谢谢。1、使用解构获取json数据let jsonData  id: 1,status: "OK",data: 'a', 'b';let  id, status, data: number   jsonData;console.log(id, status, number )
Stella981 Stella981
3年前
KVM调整cpu和内存
一.修改kvm虚拟机的配置1、virsheditcentos7找到“memory”和“vcpu”标签,将<namecentos7</name<uuid2220a6d1a36a4fbb8523e078b3dfe795</uuid
Wesley13 Wesley13
3年前
mysql设置时区
mysql设置时区mysql\_query("SETtime\_zone'8:00'")ordie('时区设置失败,请联系管理员!');中国在东8区所以加8方法二:selectcount(user\_id)asdevice,CONVERT\_TZ(FROM\_UNIXTIME(reg\_time),'08:00','0
Wesley13 Wesley13
3年前
00:Java简单了解
浅谈Java之概述Java是SUN(StanfordUniversityNetwork),斯坦福大学网络公司)1995年推出的一门高级编程语言。Java是一种面向Internet的编程语言。随着Java技术在web方面的不断成熟,已经成为Web应用程序的首选开发语言。Java是简单易学,完全面向对象,安全可靠,与平台无关的编程语言。
Stella981 Stella981
3年前
Django中Admin中的一些参数配置
设置在列表中显示的字段,id为django模型默认的主键list_display('id','name','sex','profession','email','qq','phone','status','create_time')设置在列表可编辑字段list_editable
Wesley13 Wesley13
3年前
MySQL部分从库上面因为大量的临时表tmp_table造成慢查询
背景描述Time:20190124T00:08:14.70572408:00User@Host:@Id:Schema:sentrymetaLast_errno:0Killed:0Query_time:0.315758Lock_
Python进阶者 Python进阶者
10个月前
Excel中这日期老是出来00:00:00,怎么用Pandas把这个去除
大家好,我是皮皮。一、前言前几天在Python白银交流群【上海新年人】问了一个Pandas数据筛选的问题。问题如下:这日期老是出来00:00:00,怎么把这个去除。二、实现过程后来【论草莓如何成为冻干莓】给了一个思路和代码如下:pd.toexcel之前把这