oracle安裝,

在 Linux x86 上安裝 Oracle 數據庫 10g
作者:John Smiley

學習在 RHEL 2.1、RHEL 3 或 SLES 8 上從頭安裝 Oracle 數據庫 10g 的基礎知識(僅用於評估)

 

目錄
概述
第 1 部分:安裝 Linux
RHEL 2.1
RHEL 3
SLES 8
第 2 部分:針對 Oracle 配置 Linux
驗證系統要求
創建目錄
創建 Oracle 組和用戶帳戶
配置 Linux 內核參數
爲 Oracle 用戶設置 Shell 限制
避免錯誤!(僅限 SLES 8)
Oracle 用戶的環境變量
第 3 部分:安裝 Oracle
安裝軟件
第 4 部分:配置存儲
文件系統
自動存儲管理
結論
附錄

 


概述

這是在 Linux 上安裝 Oracle 10g 軟件主要組件指南系列的第一部分。這些文章詳細介紹了 Linux 的所有三個已認證的英語發行套件(未介紹 Asianux),並假設使用廉價的 Intel x86 硬件。同時,還逐步演示了爲評估主要 Oracle 10g 產品而在常見硬件上進行安裝和配置的過程。

該系列的根本目標是逐步演示如何安裝和配置 10g 網格的所有組件。通過這個系列,您將瞭解如何安裝和配置單實例 Oracle 10g 數據庫(本文)、雙節點 Oracle RAC 10g 數據庫、Oracle 應用服務器 10g 和 Oracle Enterprise Manager 10g 網格控制的所有主要組件。

該系列提供的方法將採用最簡單的途徑(步驟數最少)來完成任務。該方法通常意味着所選擇的配置將只適用於評估。因此,該系列既不適用於構建生產品質的環境,也不反映最佳實踐。

以下是這些文章所介紹的獲得 Oracle 10g 認證的三個 Linux 發行套件:

  • Red Hat Enterprise Linux 2.1
  • Red Hat Enterprise Linux 3
  • Novell SUSE Linux Enterprise Server 8
如果您是初次接觸 Linux 和/或 Oracle,那這第一篇文章特適合您。它首先介紹基礎知識,然後逐步演示如何從頭安裝 Oracle 數據庫 10g

本文由四部分組成:第 1 部分介紹瞭如何安裝 Linux 操作系統,第 2 部分介紹瞭如何針對 Oracle 配置 Linux,第 3 部分介紹了 Oracle 數據庫安裝的要點,第 4 部分介紹瞭如何創建其他文件系統並介紹了自動存儲管理 (ASM)(Oracle 數據庫 10g 中一個出色的新特性,它顯著簡化了存儲管理)。附錄提供了幫助您瞭解新數據庫用法的信息,其中包括如何交互地訪問該數據庫、如何停止和啓動數據庫及相關服務。

 


第 1 部分:安裝 Linux

本指南採用具有以下硬件配置的服務器:

  • 兩個 800MHz Pentium III CPU
  • 512MB RAM
  • 兩個 SCSI 主機適配器 (Ultra SCSI 160)
  • 八個 SCSI 磁盤驅動器 (2 x 9GB + 6 x 36GB)
  • 一個 100Base-T 以太網適配器
  • 一個 1000Base-T 以太網適配器

對磁盤進行配置,使每個 SCSI 主機適配器連接到一個 9GB 磁盤和三個 36GB 磁盤。

請注意,儘管這根本算不上是一個“強大”的設置,但即便是使用再低的設置也可以完成本指南介紹的大部分任務。基本數據庫安裝只需要一個 CPU、512MB 內存和一個可用空間至少爲 6.5GB 的磁盤驅動器(IDE、SCSI 或 FireWire)。

現在,我們將逐步演示在服務器上安裝 Linux 操作系統的過程。本文假設進行 Linux 系統全新安裝(有別於升級),並假設服務器爲 Oracle 所專用,且服務器上沒有其他操作系統或數據。

Red Hat Enterprise Linux 2.1

Oracle 10g 經認證可以在 Red Hat Enterprise Linux 2.1(Advanced Server 和 Enterprise Server)(Update 3) 或更高版本上運行。Red Hat Network (RHN) 提供更新,這些更新可以作爲用於創建 CD 的 ISO 文件或作爲單個程序包更新下載。

要對全新 Linux 安裝應用更新,最簡單、最快速的方法是使用更新 CD 執行安裝。如果 Linux 已經安裝或 CD 上沒有更新,則可以通過 RHN 應用這些更新。由於本指南針對的是全新 Linux 安裝,因此您將使用更新 CD。

  1. 使用更新 CD 集中的第一張 CD 啓動服務器。
    • 您可能需要更改 BIOS 設置,以允許從 CD 啓動。
  2. 啓動屏幕上出現時在底部顯示 boot:
    • 選擇 Enter,從控制檯上執行圖形安裝。(對於其他安裝方法和選項,請參閱 Red Hat 安裝指南。)
    • 安裝程序掃描硬件,短暫顯示 Red Hat 閃屏,然後開始顯示一系列屏幕提示。
  3. 選擇語言
    • 接受默認值。
  4. 配置鍵盤
    • 接受默認值。
  5. 配置鼠標
    • 接受默認值。
  6. 安裝類型
    • 接受默認值。
  7. 設置磁盤分區
    • 本文不介紹磁盤分區的詳細方法,而是假設您熟悉磁盤分區方法。

      (警告:對磁盤進行錯誤分區是刪除硬盤上所有內容的最可靠、最快捷的方法之一。如果不確定如何分區,請先停下來,找人幫幫您,否則您將冒丟失數據的危險!)

      本文使用以下分區方案(文件系統均爲 ext3):

      第一個控制器 (/dev/sda) 上的 9GB 磁盤包含以下分區,用於存放所有 Linux 和 Oracle 軟件:
      - 100MB /boot 分區(對於 RHEL 2.1,最小爲 50MB)
      -1,500MB 交換分區 — 將此分區大小至少設置爲系統 RAM 的兩倍,但不要超過 2GB(32 位系統不支持大於 2GB 的交換文件)。如果需要大於 2GB 的交換空間,則創建多個交換分區。
      -7,150MB 根分區 — 該分區將用於所有目錄,包括 /usr、/tmp、/var、/opt、/home 等。這樣做純粹是爲了講解本指南而簡化安裝。更可靠的分區方案是將這些目錄劃分到單獨的文件系統。

  8. 配置啓動加載程序
    • 接受默認值。
  9. 配置啓動加載程序口令
    • 如果要爲 GRUB 設置口令,請在此處輸入。對於評估系統,無需設置該項。
  10. 配置網絡
    • 通常情況下,最好使用靜態 IP 地址配置數據庫服務器。爲此,取消選中 Configure using DHCP 並輸入服務器的網絡配置。確保輸入了主機名且已選中Activate on boot
  11. 配置防火牆
    • 出於本演示的需要,將不配置防火牆。選擇 No firewall(安全管理員,請不要生氣)。
  12. 其他語言支持
    • 接受默認值。
  13. 選擇時區
    • 選擇適合您區域的時間設置。將系統時鐘設置爲 UTC 對服務器而言通常是一個很好的做法。爲此,單擊 System clock uses UTC
  14. 配置帳戶
    • 爲 root 用戶選擇一個口令,並將其輸入所給的域中。爲自己創建一個帳戶。(不要在此時創建 oracle 帳戶;我們將在稍後創建它。)
  15. 選擇程序包組
    • 選擇 Gnome 或 KDE(或兩者都選擇)圖形用戶界面(默認爲 Gnome)。注意:這兩個 GUI 都非常受歡迎,其中 Gnome 在美國使用更普遍。我個人偏愛 KDE,這是因爲它的終端模擬器可輕鬆實現剪切和粘貼,從而可將輸入複製到多個連接(例如,當您在多個節點上配置 RAC 時,這將節省鍵入操作)。
    • 選擇 Software Development
  16. 未解決的相關性
    • 如果看到此屏幕,只需選擇 Install packages to satisfy dependencies(默認值)並繼續操作。
  17. 配置圖形界面 (X)
    • 接受默認值,除非安裝程序無法識別您的視頻卡。如果您的視頻卡無法被識別,則將無法繼續操作。
  18. 準備安裝
    • 單擊 Next
  19. 安裝程序包
    • 軟件將被複制到硬盤並被安裝。根據提示更改磁盤,然後在安裝完成時單擊 Next
  20. 創建啓動磁盤
    • 如果需要,創建一張啓動磁盤,或選擇 Skip boot disk creation
  21. 配置監視器
    • 如果安裝程序正確識別了您的監視器,則接受默認值。否則,從列表中選擇一個兼容的監視器。
  22. 恭喜
    • 從系統中取出安裝介質,然後單擊 Next
系統自動重新啓動,並顯示一個圖形登錄屏幕。如果您是使用基本產品 CD 而非更新 CD 執行的安裝,則在繼續操作前必須通過 RHN 應用更新。

驗證您的安裝

如果完成了以上步驟,您應該具備 Oracle 10g 所需的所有程序包和更新。您可以執行以下步驟驗證您的安裝。

所需內核版本:2.4.9-e.25(或更高版本)

通過運行以下命令檢查內核版本:

uname -r

例如:
# uname -r
2.4.9-e.27smp
                              
其他所需程序包的版本(或更高版本):
  • gcc-2.96-124
  • make-3.79
  • binutils-2.11
  • openmotif-2.1.30-11
  • glibc-2.2.4-31
要查看系統上安裝了這些程序包的哪些版本,運行以下命令:
                                 
rpm -q gcc make binutils openmotif glibc

例如:  
# rpm -q gcc make binutils openmotif glibc
gcc-2.96-118.7.2
make-3.79.1-8
binutils-2.11.90.0.8-12
openmotif-2.1.30-11
glibc-2.2.4-32.8
                              
如果系統上缺少任何程序包版本,或版本比以上指定的版本舊,則可以從 Red Hat Network 下載並安裝更新。

Red Hat Enterprise Linux 3

Oracle 10g 經認證可以在不需要更新的情況下運行 Red Hat Enterprise Linux 3(Advanced Server 和 Enterprise Server)的基本版本。如果擁有更新 CD,則可以使用更新版本中的啓動 CD 而非基本版本中的啓動 CD 在安裝過程中自動應用所有更新。Oracle 支持 Red Hat 的所有更新。

  1. 使用第一張 CD 啓動服務器。
    • 您可能需要更改 BIOS 設置,以允許從 CD 啓動。
  2. 啓動屏幕上出現時在底部顯示 boot:
    • 選擇 Enter,從控制檯上執行圖形安裝。(對於其他安裝方法和選項,請參閱 Red Hat 安裝指南。)
    • 安裝程序掃描硬件,短暫顯示 Red Hat 閃屏,然後開始顯示一系列屏幕提示。
  3. 選擇語言
    • 接受默認值。
  4. 配置鍵盤
    • 接受默認值。
  5. 歡迎屏幕
    • 單擊 Next
  6. 配置鼠標
    • 接受默認值。
  7. 安裝類型
    • 選擇 Custom
  8. 設置磁盤分區
    • 本文不介紹磁盤分區的詳細方法,而是假設您熟悉磁盤分區方法。

      (警告:對磁盤進行錯誤分區是刪除硬盤上所有內容的最可靠、最快捷的方法之一。如果不確定如何分區,請先停下來,找人幫幫您,否則您將冒丟失數據的危險!)

      本文使用以下分區方案(文件系統均爲 ext3):

      第一個控制器 (/dev/sda) 上的 9GB 磁盤包含以下分區,用於存放所有 Linux 和 Oracle 軟件:
      - 100MB /boot 分區
      -1,500MB 交換分區 — 將此分區大小至少設置爲系統 RAM 的兩倍,但不要超過 2GB(32 位系統不支持大於 2GB 的交換文件)。如果需要大於 2GB 的交換空間,則創建多個交換分區。
      -7,150MB 根分區 — 該分區將用於所有目錄,包括 /usr、/tmp、/var、/opt、/home 等。這樣做純粹是爲了講解本指南而簡化安裝。更可靠的分區方案是將這些目錄劃分到單獨的文件系統。

  9. 配置啓動加載程序
    • 接受默認值。
  10. 配置網絡
    • 通常情況下,最好使用靜態 IP 地址配置數據庫服務器。爲此,單擊 Edit
    • 出現一個彈出窗口。取消選中 Configure using DHCP 複選框,並輸入服務器的 IP 地址和網絡掩碼。確保選中Activate on boot,然後單擊 OK
    • 在 Hostname 框中,選擇 manually 並輸入主機名。
    • 在 Miscellaneous Settings 框中,輸入其他網絡設置。
  11. 配置防火牆
    • 出於本演示的需要,將不配置防火牆。選擇 No firewall
  12. 其他語言支持
    • 接受默認值。
  13. 選擇時區
    • 選擇適合您區域的時間設置。將系統時鐘設置爲 UTC 對服務器而言通常是一個很好的做法。爲此,單擊 System clock uses UTC
  14. 設置 Root 口令
    • 輸入 root 的口令,並再次輸入以進行確認。
  15. 選擇程序包組
    • 只選擇此處顯示的程序包集,其他選項不要選。
    • 桌面
      - X Window 系統
      - Gnome
      - KDE
      - 請參閱我在 RHES 2.1 部分中提供的有關 GUI 選擇的意見。
    • 應用程序
      - 編輯器
      - 圖形因特網
    • 服務器
      - 不要選擇該組中的任何選項。
    • 開發
      - 開發工具
    • 系統
      - 管理工具
    • Red Hat Enterprise Linux
      - 不要選擇該組中的任何選項。
    • 雜項
      - 原有軟件開發
    • 單擊 Next 繼續操作。
  16. 準備安裝
    • 單擊 Next
  17. 安裝程序包
    • 軟件將被複制到硬盤並被安裝。根據提示更改磁盤,然後在安裝完成時單擊 Next
  18. 配置圖形界面 (X)
    • 接受默認值,除非安裝程序無法識別您的視頻卡。如果您的視頻卡無法被識別,則將無法繼續操作。
  19. 配置監視器
    • 如果安裝程序正確識別了您的監視器,則接受默認值。否則,從列表中選擇一個兼容的監視器。
  20. 定製圖形配置
    • 接受默認值。
  21. 恭喜
    • 從系統中取出安裝介質,然後單擊 Next
  22. 系統自動重新啓動並顯示一個新的歡迎屏幕。
    • 單擊 Next
  23. 許可協議
    • 閱讀許可協議。如果同意其中的條款,則選擇 Yes, I agree to the License Agreement 並單擊Next
  24. 日期和時間
    • 設置日期和時間。
    • 如果要使用 NTP 服務器(推薦),則選擇 Enable Network Time Protocol 並輸入 NTP 服務器的名稱。
  25. 用戶帳戶
    • 爲自己創建一個帳戶。
    • 此時不要爲 oracle 創建帳戶。本部分稍後將介紹如何創建 oracle 帳戶。
  26. Red Hat Network
    • 如果要立即使用或激活 Red Hat Network 帳戶,則接受默認值,單擊 Next 並遵循 Red Hat 產品附帶的產品激活說明。
  27. 其他 CD
    • 單擊 Next
  28. 完成設置
    • 單擊 Next
  29. 出現一個圖形登錄屏幕。
  30. 恭喜!您的 Linux 軟件現已安裝完畢。
驗證您的安裝

如果完成了以上步驟,您應該具備 Oracle 10g 所需的所有程序包和更新。您可以執行以下步驟驗證您的安裝。

所需內核版本:2.4.21-4.EL(這是 RHEL 3 的基本版本附帶的內核版本。此內核或更新中提供的任何版本的內核均適用於 Oracle 10g。)

通過運行以下命令檢查內核版本:

uname -r

例如:
# uname -r
2.4.21-4.0.1.ELsmp
                              
其他所需程序包的版本(或更高版本):
  • gcc-3.2.3-2
  • make-3.79
  • binutils-2.11
  • openmotif-2.2.2-16
  • setarch-1.3-1
  • compat-gcc-7.3-2.96.122
  • compat-gcc-c++-7.3-2.96.122
  • compat-libstdc++-7.3-2.96.122
  • compat-libstdc++-devel-7.3-2.96.122
  • compat-db-4.0.14.5(Oracle 10g 數據庫安裝指南中將其列爲是必需的,但此處並不需要)
要查看系統上安裝了這些程序包的哪些版本,以 root 用戶身份運行以下命令:
                                 
rpm -q gcc make binutils openmotif setarch compat-db compat-gcc \
compat-gcc-c++ compat-libstdc++ compat-libstdc++-devel

例如:
# rpm -q gcc make binutils openmotif setarch compat-db compat-gcc \
> openmotif compat-gcc-c++ compat-libstdc++ compat-libstdc++-devel
gcc-3.2.3-20
make-3.79.1-17
binutils-2.14.90.0.4-26
openmotif-2.2.2-16
setarch-1.3-1
package compat-db is not installed
compat-gcc-7.3-2.96.122
compat-gcc-c++-7.3-2.96.122
compat-libstdc++-7.3-2.96.122
compat-libstdc++-devel-7.3-2.96.122
                              
請注意,尚未安裝 compat-db 程序包。安裝過程中可用的任何程序包組均不包含此程序包,因此必須在單獨的步驟中安裝。如果系統上缺少任何其他程序包版本,或版本比以上指定的版本舊(compat-db 除外),則可以從 Red Hat Network 下載並安裝更新。

安裝 compat-db

插入原始 Red Hat Enterprise Linux 介質的第二張 CD。(Update 2 中未包含該程序包,它僅存在於原始介質中。)

此 CD 自動掛載。

以 root 用戶身份運行以下命令:

rpm -ivh /mnt/cdrom/RedHat/RPMS/compat-db-4.0.14-5.i386.rpm

例如:
# rpm -ivh /mnt/cdrom/RedHat/RPMS/compat-db-4.0.14-5.i386.rpm
Preparing...         ########################################### [100%]
1:compat-db       ########################################### [100%]
                              

 

SUSE Linux Enterprise Server 8

Oracle 10g 經認證可以在 Novell SUSE Linux Enterprise Server (SLES) 8 上運行。Novell 通過 CD 或通過其支持門戶在線提供 Service Pack 和程序包更新。在本指南中,我們將從 CD 安裝 SLES 8 (Service Pack 3)。

  1. 使用 SLES 8 CD 啓動服務器。
    • 您可能需要更改 BIOS 設置,以允許從 CD 啓動。
  2. 出現 SUSE Linux Enterprise Server 安裝屏幕。
    • 選擇 Installation
    • 安裝程序掃描您的硬件並顯示 YaST 界面。
  3. 選擇語言
    • 接受許可協議。
    • 接受默認值 English (US)
  4. 安裝設置
    • 選擇 New Installation
  5. 分區
    • 本文不介紹磁盤分區的詳細方法,而是假設您熟悉磁盤分區方法。

      (警告:對磁盤進行錯誤分區是刪除硬盤上所有內容的最可靠、最快捷的方法之一。如果不確定如何分區,請先停下來,找人幫幫您,否則您將冒丟失數據的危險!)

      本文使用以下分區方案(文件系統均爲 ext3):

      第一個控制器 (/dev/sda) 上的 9GB 磁盤包含以下分區,用於存放所有 Linux 和 Oracle 軟件:
      - 100MB /boot 分區
      -1,500MB 交換分區 — 將此分區大小至少設置爲系統 RAM 的兩倍,但不要超過 2GB(32 位系統不支持大於 2GB 的交換文件)。如果需要大於 2GB 的交換空間,則創建多個交換分區。
      -7,150MB 根分區 — 該分區將用於所有目錄,包括 /usr、/tmp、/var、/opt、/home 等。這樣做純粹是爲了講解本指南而簡化安裝。更可靠的分區方案是將這些目錄劃分到單獨的文件系統。

  6. 軟件
    • 單擊 Software 的鏈接。
    • 出現 Software Selection 屏幕。
    • 單擊 Detailed Selection
    • 左側窗口顯示軟件選擇列表。單擊每個選項旁的複選框以將其選中/取消選中。
    • 選擇以下軟件(這是推薦的軟件集;不要選中其他軟件):
      - C/C++ 編譯器和工具
      - KDE(或 Gnome)
      - LSB 運行時環境
      - 幫助與支持文檔
      - 圖形基本系統
      - YaST2 配置模塊
      - SLES 管理工具
    • 建議不要安裝以下項,因爲它們可能與提供相同服務的 Oracle 產品衝突:
      - 簡單 Web 服務器
      - 身份驗證服務器(NIS、LDAP、Kerberos)
  7. 時區
    • 設置您的時區。
  8. 單擊 Accept
  9. 出現一個警告對話框。準備好繼續操作時,單擊 Yes, install
  10. 根據安裝程序的提示更換 CD。
  11. 安裝此軟件後,將顯示一個窗口,提示基本系統已經安裝成功。
    • 取出安裝 CD,然後單擊 OK
  12. 系統重新啓動。
  13. 輸入 root 用戶的口令,並再次輸入以進行確認。
  14. 爲自己創建一個帳戶。不要在此時創建 oracle 帳戶;我們將在稍後創建它。
  15. 桌面設置
    • 接受默認值。
  16. 出現一個有關自動檢測本地打印機的警告窗口。
    • 單擊 Skip detection
  17. 配置網絡接口,並在準備好繼續操作後單擊 Next
    • 建議爲服務器設置靜態 IP 地址。
    • 構建數據庫無需配置打印機、調制解調器、ISDN 適配器或聲卡。
  18. 出現一個圖形登錄屏幕。
  19. 現在,您需要安裝 Service Pack 3。以您自己的身份登錄。
  20. 插入更新 CD,然後單擊 Patch CD Update
  21. 啓動 YaST2(SUSE 的系統管理工具)。
    • 選擇 SUSE > System > YaST2。(SUSE 是位於屏幕左下部帶微笑蜥蜴側臉的綠色圓按鈕。它相當於“開始”。)
    • 出現一個窗口,提示輸入 root 用戶口令。輸入口令,然後單擊 OK
    • 出現 YaST Control Center。
  22. 出現 YaST Online Update 窗口。
    • 接受默認值,然後單擊 Next
  23. 出現一個窗口,顯示一個補丁更新列表。
    • YaST 在更新系統其他部分之前需要先對自身進行更新。所需程序包已被選中。此時不要選擇任何其他程序包。
    • 單擊 Accept
  24. 出現一個窗口,提示重新啓動在線更新。
    • 單擊 OK
  25. 出現一個窗口,提示安裝已成功。
    • 單擊 OK
  26. 在 YaST Online Update 窗口中,單擊 Finish
  27. 在 YaST Control Center 窗口中,單擊 Close
  28. 重複步驟 21 和 22。
  29. 出現一個窗口,顯示一個補丁更新列表。
    • 單擊 Accept 接受默認值。
    • 可能出現包含各種提示(如“Make sure you update sendmail”)的小彈出窗口。單擊 OK 關閉它們。
    • 此步驟需要一些時間。將光標懸停在 Next 按鈕上。如果更新仍在運行,則顯示一個時鐘圖標。
  30. 出現一個窗口,提示安裝已成功。
    • 單擊 OK
  31. 在 YaST Online Update 屏幕上,單擊 Next
    • 安裝程序寫系統配置。
  32. 在 YaST Control Center 中,單擊 Close
  33. 註銷。
    • SUSE > Logout。
  34. 取出更新 CD。
  35. 重新啓動系統。
    • 在圖形登錄屏幕上,單擊 Menu
    • 選擇 Shutdown
    • 選擇 Restart computer
    • 輸入 root 口令。
    • 單擊 OK
  36. 恭喜!您的 Linux 軟件現已安裝完畢。
驗證您的安裝

如果完成了以上步驟,您應該具備 Oracle 10g 所需的所有程序包和更新。您可以執行以下步驟驗證您的安裝。

所需內核版本:2.4.21-138(或更高版本)

通過運行以下命令檢查內核版本:

uname -r

例如:
# uname -r
k_smp-2.4.21-138
                              
其他所需程序包的版本(或更高版本):
  • gcc-3.2.2-38
  • make-3.79
  • binutils-2.12
  • openmotif-2.2.2-124
要查看系統上安裝了這些程序包的哪些版本,以 root 用戶身份運行以下命令:
                                 
rpm -q gcc make binutils openmotif

例如:  
# rpm rpm -q gcc make binutils openmotif
gcc-3.2.2-38
make-3.79.1-407
binutils-2.12.90.0.15-50
openmotif-2.2.2-124
                              
如果系統上缺少任何程序包版本,或版本比以上指定的版本舊,則可以從 SUSE Linux Portal 下載和安裝更新。

 


第 2 部分:針對 Oracle 配置 Linux

Linux 軟件現已安裝完畢,您需要針對 Oracle 對其進行配置。本部分將逐步講解針對 Oracle 數據庫 10g 配置 Linux 的過程。

驗證系統要求

要驗證系統是否滿足 Oracle 10g 數據庫的最低要求,以 root 用戶身份登錄並運行以下命令。

 

要查看可用 RAM 和交換空間大小,運行以下命令:
                                 
grep MemTotal /proc/meminfo
grep SwapTotal /proc/meminfo

例如:
# grep MemTotal /proc/meminfo
MemTotal:512236 kB
# grep SwapTotal /proc/meminfo
SwapTotal:1574360 kB
                              

所需最小 RAM 爲 512MB,而所需最小交換空間爲 1GB。對於 RAM 小於或等於 2GB 的系統,交換空間應爲 RAM 數量的兩倍;對於 RAM 大於 2GB 的系統,交換空間應爲 RAM 數量的一到兩倍。

Oracle 10g 軟件還需要 2.5GB 的可用磁盤空間,而數據庫則另需 1.2GB 的可用磁盤空間。/tmp 目錄至少需要 400MB 的可用空間。要檢查系統上的可用磁盤空間,運行以下命令:

df -h

例如:
# df -h
Filesystem        Size  Used Avail Use% Mounted on
/dev/sda3         6.8G  1.3G  5.2G  20% /
/dev/sda1         99M   17M   77M  18% /boot
                              

該示例表明,/tmp 目錄沒有自己的文件系統。(對本指南而言,它是根文件系統的一部分。)根文件系統可用空間爲 5.2 GB,除了滿足安裝 (2.5 + 1.2 + 0.4 = 4.1GB) 外還小有富餘。

創建 Oracle 組和用戶帳戶

接下來,創建用於安裝和維護 Oracle 10g 軟件的 Linux 組和用戶帳戶。用戶帳戶將稱爲 oracle,而組將稱爲 oinstall 和 dba。以 root 用戶身份執行以下命令:

/usr/sbin/groupadd oinstall
/usr/sbin/groupadd dba
/usr/sbin/useradd -m -g oinstall -G dba oracle
id oracle

例如:
# /usr/sbin/groupadd oinstall
# /usr/sbin/groupadd dba
# /usr/sbin/useradd -m -g oinstall -G dba oracle
# id oracle
uid=501(oracle) gid=501(oinstall) groups=501(oinstall),502(dba)
                              

設置 oracle 帳戶的口令:

passwd oracle

例如:
# passwd oracle
Changing password for user oracle.
New password:
Retype new password:
passwd:all authentication tokens updated successfully.
                              

創建目錄

現在,創建存儲 Oracle 10g 軟件和數據庫文件的目錄。本指南在創建目錄結構時所用的命名慣例符合最佳靈活結構 (OFA) 規範。有關 OFA 標準的更多信息,請參閱針對 UNIX 系統的 Oracle 數據庫 10g 安裝指南附錄 D

以下假設在根文件系統中創建目錄。這樣做是爲了簡便起見,不建議將其作爲通用做法。這些目錄通常被創建爲單獨的文件系統。

以 root 用戶身份執行以下命令:

mkdir -p /u01/app/oracle
mkdir -p /u02/oradata
chown -R oracle:oinstall /u01/app/oracle /u02/oradata
chmod -R 775 /u01/app/oracle /u02/oradata

例如:
# mkdir -p /u01/app/oracle
# mkdir -p /u02/oradata
# chown -R oracle:oinstall /u01/app/oracle /u02/oradata
# chmod -R 775 /u01/app/oracle /u02/oradata
                              

配置 Linux 內核參數

Linux 內核非常出色。與大多數其他 *NIX 系統不同,Linux 允許在系統啓動和運行時修改大多數內核參數。完成內核參數更改後不必重新啓動系統。Oracle 數據庫 10g 需要以下所示的內核參數設置。其中給出的是最小值,因此如果您的系統使用的值較大,則不要更改它。

kernel.shmall = 2097152
kernel.shmmax = 2147483648
kernel.shmmni = 4096
kernel.sem = 250 32000 100 128
fs.file-max = 65536
net.ipv4.ip_local_port_range = 1024 65000
                              

如果您按照以上說明安裝了 Linux,且內核參數全部採用默認值,則只需在以 root 用戶身份登錄後執行下命令。

cat >> /etc/sysctl.conf <<EOF
kernel.shmall = 2097152
kernel.shmmax = 2147483648
kernel.shmmni = 4096
kernel.sem = 250 32000 100 128
fs.file-max = 65536
net.ipv4.ip_local_port_range = 1024 65000
EOF
/sbin/sysctl -p

例如:
# cat >> /etc/sysctl.conf <<EOF
> kernel.shmall = 2097152
> kernel.shmmax = 2147483648
> kernel.shmmni = 4096
> kernel.sem = 250 32000 100 128
> fs.file-max = 65536
> net.ipv4.ip_local_port_range = 1024 65000
> EOF
# /sbin/sysctl -p
net.ipv4.ip_forward = 0
net.ipv4.conf.default.rp_filter = 1
kernel.sysrq = 0
kernel.shmall = 2097152
kernel.shmmax = 2147483648
kernel.shmmni = 4096
kernel.sem = 250 32000 100 128
fs.file-max = 65536
net.ipv4.ip_local_port_range = 1024 65000
                              

以 root 用戶身份運行以下命令來驗證您的設置:

/sbin/sysctl -a | grep shm
/sbin/sysctl -a | grep sem
/sbin/sysctl -a | grep file-max
/sbin/sysctl -a | grep ip_local_port_range

例如:
# /sbin/sysctl -a | grep shm
kernel.shmmni = 4096
kernel.shmall = 2097152
kernel.shmmax = 2147483648
kernel.shm-use-bigpages = 0
# /sbin/sysctl -a | grep sem
kernel.sem = 250        32000   100     128
# /sbin/sysctl -a | grep file-max
fs.file-max = 65536
# /sbin/sysctl -a | grep ip_local_port_range
net.ipv4.ip_local_port_range = 1024     65000
                              

如果系統的參數設置的比上述參數值小,則編輯 /etc/sysctl.conf 文件,添加或更改這些參數。完成後,運行以下命令激活更改:

/sbin/sysctl -p
                              

對於 SLES 8,在完成以上步驟後運行以下命令。

                                 
/sbin/chkconfig boot.sysctl on
                              

爲 oracle 用戶設置 Shell 限制

Oracle 建議對每個 Linux 帳戶可以使用的進程數和打開的文件數設置限制。要進行這些更改,以 root 用戶的身份執行下列命令:

cat >> /etc/security/limits.conf <<EOF
oracle               soft    nproc   2047
oracle               hard    nproc   16384
oracle               soft    nofile  1024
oracle               hard    nofile  65536
EOF

cat >> /etc/pam.d/login <<EOF
session    required     /lib/security/pam_limits.so
EOF
                              

對於 RHEL 2.1 和 RHEL 3,使用以下命令:

cat >> /etc/profile <<EOF
if [ \$USER = "oracle" ]; then  
if [ \$SHELL = "/bin/ksh" ]; then
ulimit -p 16384
ulimit -n 65536
else
ulimit -u 16384 -n 65536
fi
umask 022
fi
EOF

cat >> /etc/csh.login <<EOF
if ( \$USER == "oracle" ) then
limit maxproc 16384
limit descriptors 65536
umask 022
endif
EOF
                              

對於 SLES 8,使用以下命令:

cat >> /etc/profile.local <<EOF
if [ \$USER = "oracle" ]; then  
if [ \$SHELL = "/bin/ksh" ]; then
ulimit -p 16384
ulimit -n 65536
else
ulimit -u 16384 -n 65536
fi
umask 022
fi
EOF

cat >> /etc/csh.login.local <<EOF
if ( \$USER == "oracle" ) then
limit maxproc 16384
limit descriptors 65536
umask 022
endif
EOF
                              

避免錯誤!(僅限 SLES 8)

在 SLES 8 上安裝 Oracle Enterprise Manager 10g 時存在一個錯誤 — 由於所需端口以爲 /etc/services 所保留而導致安裝失敗。OEM DBConsole 需要端口 1830,而在 SLES8 環境中,此端口已經爲 /etc/services 所保留。此錯誤在 MetaLink 上的錯誤號爲 3513603。

要避免安裝過程中出現問題,以 root 用戶身份登錄,並在安裝 Oracle 10g 軟件之前將 /etc/services 文件中的端口 1830 至 1849 對應的行註釋掉。(注意:此時,您最好重新啓動服務器以確保以上更改生效。)

oracle 用戶的環境變量

要使用 Oracle 產品,應該或必須設置幾個環境變量。對於數據庫服務器,建議設置以下環境變量:

ORACLE_BASE
ORACLE_HOME
ORACLE_SID
PATH

如果您在同一服務器上安裝了多個 Oracle 產品或數據庫,則 ORACLE_HOME、ORACLE_SID 和 PATH 變量可能會更改。ORACLE_BASE 變量不應更改,並可以在需要時在您的登錄配置文件中設置它。Oracle 提供了一個稱作 oraenv 的實用程序來設置其他變量。

以 oracle 身份登錄,並通過在 .bash_profile 或 .profile(bash 或 ksh)中添加以下行,將 ORACLE_BASE 添加到登錄配置文件:

ORACLE_BASE=/u01/app/oracle; export ORACLE_BASE
                              

或在 .login (csh) 中添加以下行:

setenv ORACLE_BASE /u01/app/oracle
                              

此更改將在您下次登錄到 oracle 帳戶時生效。要使更改對當前會話爲活動狀態,只需從命令行運行此命令。

 


第 3 部分:安裝 Oracle

可以從 OTN 下載 Oracle 數據庫 10g。Oracle 提供了一個免費的開發和測試許可。但不提供支持,且該許可不允許用於生產目的。OTN 提供了完整的許可協議。

要使 Oracle 10g 發行套件介質可以在服務器上使用,最簡單的方法是將其直接下載到服務器。

使用圖形登錄以 oracle 身份登錄。

創建一個目錄以存放 Oracle 10g 發行套件:

mkdir 10g_db
                              

要從 OTN 下載 Oracle 數據庫 10g,請將瀏覽器(Mozilla 比較好用)指向這個鏈接。填寫 Eligibility Export Restrictions 頁面,並閱讀 OTN 許可協議。如果您接受限制和許可協議,則單擊 I Accept

單擊 ship.db.cpio.gz 鏈接,並將該文件保存在爲此目的創建的目錄 (10g_db) 中 — 如果尚未登錄到 OTN,則此時可能提示您登錄。

解壓縮此文件:

cd 10g_db
gunzip ship.db.cpio.gz
cpio -idmv < ship.db.cpio
                              

安裝軟件

使用 oracle 帳戶登錄。

指定數據庫名稱 (ORACLE_SID)。該名稱通常不多於五個字符。對此安裝使用 demo1

設置環境變量:

  • Borne shell 和 Korn shell
                                         
    ORACLE_BASE=/u01/app/oracle; export ORACLE_BASE
    ORACLE_SID=demo1; export ORACLE_SID
                                      
  • C shell
                                         
    setenv ORACLE_BASE /u01/app/oracle
    setenv ORACLE_SID demo1
                                      
將目錄更改爲 Oracle 10g 軟件解壓縮到的位置。

 

例如:
$ cd $HOME/10g_db
                              

將目錄更改爲 Disk1。

例如:
$ cd Disk1
                              

啓動 Oracle 通用安裝程序。

$ ./runInstaller
                              

 

  1. 歡迎
    • 單擊 Next
  2. 指定清單目錄和證書
    • 如果您一直在依循本指南中的步驟,則使用默認值即可。否則,編輯清單目錄的路徑,以指向正確目錄。
    • 操作系統組名稱應爲 oinstall
  3. 如果這是首次在此機器上安裝 Oracle,則您將收到一個彈出窗口,提示需要以 root 用戶身份運行 orainstRoot.sh 腳本。以 root 用戶身份登錄,更改到窗口中指定的目錄,執行該腳本,然後繼續操作。
  4. 指定文件位置
    • 如果您一直在依循本指南中的步驟,則使用默認值即可。否則,在繼續操作前確保源路徑和目標路徑正確。
  5. 選擇安裝類型
    • 接受默認值 Enterprise Edition
  6. 與特定產品相關的先決條件的檢查
    • 如果您一直在依循本指南中的步驟,則所有檢查都應順利通過。如果一個或多個檢查失敗,則在繼續操作前糾正該問題。
  7. 選擇數據庫配置
    • 接受默認值 Create a starter databaseGeneral Purpose
  8. 指定數據庫配置選項
    • 輸入數據庫的全局數據庫名稱。該名稱應包含 ORACLE_SID 和服務器域名(例如,demo1.orademo.org,其中 demo1 是 ORACLE_SID,orademo.org 是域名)。
    • 輸入全局數據庫名稱時,SID 框將自動填充。
    • 接受默認的數據庫字符集。
    • 選擇 Create database with sample schemas
  9. 選擇數據庫管理選項
    • 選擇 Use Database Control for Database Management
  10. 指定數據庫文件存儲選項
    • 選擇 File System,然後輸入數據庫文件要使用的路徑名(在本例中爲 /u02/oradata)。
  11. 指定備份和恢復選項
    • 選擇 Do not enable Automated backups
  12. 指定數據庫模式口令
    • 選擇 Use the same password for all the accounts
    • 選擇一個口令,然後輸入兩次進行確認。
  13. 摘要
    • 顯示已安裝產品的摘要。
    • 單擊 Install
  14. 安裝
    • 此屏幕歷經安裝和鏈接 Oracle 軟件的幾個階段。
    • 安裝過程結束時彈出一個窗口顯示配置信息。記下 Enterprise Manager URL,然後單擊 OK 關閉該窗口。
    • 彈出一個“Setup Privileges”窗口,提示需要以 root 用戶身份運行配置腳本。以 root 用戶身份登錄,切換到該窗口中指示的目錄,然後執行 root.sh 腳本。該腳本提示輸入本地 bin 目錄的位置。按Enter 鍵接受默認值。當腳本完成時,返回到 Setup Privileges 窗口並單擊 OK。(如下所示。)
  15. 安裝結束
    • 記下摘要中顯示的 URL,並在準備好時單擊 Exit
  16. 恭喜!您的新 Oracle 10g 數據庫已經啓動並可以使用。

 


第 4 部分:配置存儲

我們在第 3 部分中創建的數據庫使用單一文件系統 (/u02/oradata) 進行磁盤存儲。但爲 Oracle 數據庫配置存儲的方式有多種。

第 4 部分介紹了爲此數據庫配置磁盤存儲的其他方法。尤其是,它描述瞭如何創建其他文件系統以及如何使用自動存儲管理 (ASM)。如何使用原始設備和 Oracle 集羣文件系統 (OCFS) 將在本系列的另一篇文章中介紹,該篇文章介紹瞭如何使用 Oracle 真正應用集羣 (RAC) 創建集羣數據庫。

文件系統

文件系統是爲 Oracle 數據庫存儲數據文件、重做日誌和控制文件最常用的方法。文件系統易於實施,並且無需第三方軟件來管理。

大多數情況下,文件系統在 Linux 的初始安裝過程中創建。但有時必須在初始安裝後(如安裝新磁盤驅動器後)創建新文件系統。

本部分介紹瞭如何構建新文件系統以及如何在 Oracle 數據庫中使用它。除非另有說明,否則必須以 root 用戶身份運行所有命令。

對磁盤進行分區

必須使用空磁盤分區來創建文件系統。如果已經有一個空的可用磁盤分區,則跳到下一步。

以下是一個爲 Linux 文件系統創建新分區的示例。(警告:對磁盤進行錯誤分區是刪除硬盤上所有內容的最可靠、最快捷的方法之一。如果不確定如何分區,請先停下來,找人幫幫您,否則您將冒丟失數據的危險。)

此示例使用 /dev/sdb(一個沒有分區的空 SCSI 磁盤)爲整個磁盤 (36 GB) 創建單個分區。

例如:
# fdisk /dev/sdb
Device contains neither a valid DOS partition table, nor Sun, SGI or OSF disklabel
Building a new DOS disklabel.Changes will remain in memory only,
until you decide to write them.After that, of course, the previous
content won't be recoverable.


The number of cylinders for this disk is set to 4427.
There is nothing wrong with that, but this is larger than 1024,
and could in certain setups cause problems with:
1) software that runs at boot time (e.g., old versions of LILO)
2) booting and partitioning software from other OSs
(e.g., DOS FDISK, OS/2 FDISK)

Command (m for help):p

Disk /dev/sdb:255 heads, 63 sectors, 4427 cylinders
Units = cylinders of 16065 * 512 bytes

Device Boot    Start       End    Blocks   Id  System

Command (m for help):n
Command action
e   extended
p   primary partition (1-4)
p
Partition number (1-4):1
First cylinder (1-4427, default 1):
Using default value 1
Last cylinder or +size or +sizeM or +sizeK (1-4427, default 4427):
Using default value 4427

Command (m for help):w
The partition table has been altered!

Calling ioctl() to re-read partition table.

WARNING:If you have created or modified any DOS 6.x
partitions, please see the fdisk manual page for additional
information.
Syncing disks.
                              

現在驗證新分區:

                                 
例如:
# fdisk /dev/sdb

The number of cylinders for this disk is set to 4427.
There is nothing wrong with that, but this is larger than 1024,
and could in certain setups cause problems with:
1) software that runs at boot time (e.g., old versions of LILO)
2) booting and partitioning software from other OSs
(e.g., DOS FDISK, OS/2 FDISK)

Command (m for help):p

Disk /dev/sdb:255 heads, 63 sectors, 4427 cylinders
Units = cylinders of 16065 * 512 bytes

Device Boot    Start       End    Blocks   Id  System
/dev/sdb1             1      4427  35559846   83  Linux

Command (m for help):q
                              

創建文件系統

使用 ext3 創建這個新的文件系統。也可以使用其他文件系統,但 ext3 在系統崩潰時可提供最快的恢復。

例如:
# mke2fs -j /dev/sdb1
mke2fs 1.26 (3-Feb-2002)
Filesystem label=
OS type:Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
4447744 inodes, 8889961 blocks
444498 blocks (5.00%) reserved for the super user
First data block=0
272 block groups
32768 blocks per group, 32768 fragments per group
16352 inodes per group
Superblock backups stored on blocks:
        32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632,
        2654208, 4096000, 7962624

Writing inode tables:done
Creating journal (8192 blocks):done
Writing superblocks and filesystem accounting information:done

This filesystem will be automatically checked every 23 mounts or
180 days, whichever comes first.Use tune2fs -c or -i to override.
                              

創建掛載點

文件系統必須有一個掛載點,它只是一個空的目錄,新文件系統在這裏與系統目錄樹“相連”。掛載點的命名應遵循 Oracle 靈活結構 (OFA) 標準。有關 OFA 標準的更多信息,請參閱Oracle 10g 數據庫安裝指南附錄 D

由於您已經在第 1 部分中使用了 /u01 和 /u02 目錄名稱,因此在本示例中使用 /u03。

例如:
# mkdir /u03
                              

將新文件系統添加到 /etc/fstab

因此新文件系統將在系統啓動時自動掛載,您需要向描述新文件系統及其安裝位置的 /etc/fstab 文件中添加一行。使用文本編輯器向 /etc/fstab 中添加如下所示的一行。

/dev/sdb1         /u03           ext3    defaults       1 1
                              

掛載新文件系統

文件系統掛載後就可以使用了。只有掛載了文件系統,才能在其中存儲文件。使用以下命令掛載文件系統並驗證它是否可用。

mount /u03
df -h /u03

例如:
# mount /u03
# df -h /u03
Filesystem            Size  Used Avail Use% Mounted on
/dev/sdb1             33G   33M  31G   1%   /u03
                              

創建 Oracle 目錄並設置權限

現在,創建一個用於存放 Oracle 文件的目錄。該示例中使用的目錄名遵循數據庫的 OFA 標準命名慣例,即 ORACLE_SID=demo1。

mkdir -p /u03/oradata/demo1
chown -R oracle:oinstall /u03/oradata
chmod -R 775 /u03/oradata
                              

在新文件系統中創建一個新表空間

新文件系統已可以使用。接下來,在文件系統中創建一個用於存儲數據庫對象的新表空間。以 SYSTEM 用戶身份連接到數據庫,然後執行 CREATE TABLESPACE 語句,並在新文件系統中指定數據文件。

例如:
$ sqlplus

SQL*Plus:Release 10.1.0.2.0 - Production on Sun Jun 13 15:01:08 2004

Copyright (c) 1982, 2004, Oracle.All rights reserved.

Enter user-name:system
Enter password:

Connected to:
Oracle Database 10g Enterprise Edition Release 10.1.0.2.0 - Production
With the Partitioning, OLAP and Data Mining options

SQL> create tablespace data1
2 datafile '/u03/oradata/demo1/data1_01.dbf' size 100M
3 extent management local
4 segment space management auto;

Tablespace created.
                              

現在,可以使用此新表空間存儲數據庫對象,如表和索引。

 

例如:
SQL> create table demotab (id number(5) not null primary key,
2 name varchar2(50) not null,
3 amount number(9,2))
4 tablespace data1;
  
Table created.
                                

                              

自動存儲管理 (ASM)

我把最重要的內容留在了最後。ASM 是 Oracle 數據庫 10g 中一個非常出色的新特性,它以平臺無關的方式提供了文件系統、邏輯卷管理器以及軟件 RAID 等服務。ASM 可以條帶化和鏡像磁盤,從而實現了在數據庫被加載的情況下添加或移除磁盤以及自動平衡 I/O 以刪除“熱點”。它還支持直接和異步的 I/O 並使用 Oracle9i 中引入的 Oracle 數據管理器 API(簡化的 I/O 系統調用接口)。

ASM 不是一個通用的文件系統,並只能用於 Oracle 數據文件、重做日誌以及控制文件。ASM 中的文件既可以由數據庫自動創建和命名(通過使用 Oracle 管理文件特性),也可以由 DBA 手動創建和命名。由於操作系統無法訪問 ASM 中存儲的文件,因此對使用 ASM 文件的數據庫執行備份和恢復操作的唯一途徑就是通過恢復管理器 (RMAN)。

ASM 作爲單獨的 Oracle 實例實施,只有它在運行時其他數據庫才能訪問它。在 Linux 上,只有運行 OCSSD 服務(由 Oracle 通用安裝程序默認安裝)才能使用 ASM。ASM 需要的內存不多:對大多數系統,只需 64 MB。

安裝 ASM

在 Linux 平臺上,ASM 可以使用原始設備,或通過 ASMLib 接口管理的設備。出於易於使用和性能方面的原因,Oracle 建議在原始設備上使用 ASMLib。ASMLib 現在可以從 OTN免費下載。本部分逐步講解使用 ASMLib 配置一個簡單 ASM 實例和構建一個使用 ASM 進行磁盤存儲的數據庫的全過程。

確定所需的 ASMLib 版本

ASMLib 以三個 Linux 程序包組成的程序包集提供:

  • oracleasmlib - ASM 庫
  • oracleasm-support - 用於管理 ASMLib 的實用程序
  • oracleasm - ASM 庫的內核模塊
每個 Linux 發行套件都有其自己的 ASMLib 程序包集。在每個發行套件中,每個內核版本都有一個相應的 oracleasm 程序包。以下部分介紹如何確定所需的程序包集。

首先,以 root 用戶身份登錄並運行以下命令來確定所使用的內核:

uname -rm

例如:
# uname -rm
2.4.9-e.27smp i686
                              

該示例表明,這是一個使用 Intel i686 CPU 的 SMP(多處理器)系統的 2.4.9 內核。

使用此信息在 OTN 上查找相應的 ASMLib 程序包:

  1. 將 Web 瀏覽器指向這個鏈接
  2. 選擇適用於您的 Linux 版本的鏈接。
  3. 下載適用於您的 Linux 版本的 oracleasmlib 和 oracleasm-support 程序包
  4. 下載與您的內核相對應的 oracleasm 程序包。對於以上示例,下載 oracleasm-2.4.9-e-smp-1.0.0-1.i686.rpm 程序包。

    接下來,通過以 root 用戶身份執行以下命令來安裝程序包:

    rpm -Uvh oracleasm-kernel_version-asmlib_version.cpu_type.rpm \
    oracleasmlib-asmlib_version.cpu_type.rpm \
    oracleasm-support-asmlib_version.cpu_type.rpm
    
    例如:
    # rpm -Uvh \
    > oracleasm-2.4.9-e-smp-1.0.0-1.i686.rpm \
    > oracleasmlib-1.0.0-1.i386.rpm \
    > oracleasm-support-1.0.0-1.i386.rpm
    Preparing...             #################################### [100%]
    1:oracleasm-support      #################################### [ 33%]
    2:oracleasm-2.4.9-e-smp  #################################### [ 66%]
    Linking module oracleasm.o into the module path [  OK  ]
    3:oracleasmlib           #################################### [100%]
                                      

配置 ASMLib

使用 ASMLib 之前,必須運行配置腳本以準備驅動程序。以 root 用戶身份運行以下命令,並響應如下示例中所顯示的提示。

# /etc/init.d/oracleasm configure
Configuring the Oracle ASM library driver.

This will configure the on-boot properties of the Oracle ASM library
driver.The following questions will determine whether the driver is
loaded on boot and what permissions it will have.The current values
will be shown in brackets ('[]').Hitting <ENTER> without typing an
answer will keep that current value.Ctrl-C will abort.

Default user to own the driver interface []:oracle
Default group to own the driver interface []:dba
Start Oracle ASM library driver on boot (y/n) [n]:y
Fix permissions of Oracle ASM disks on boot (y/n) [y]:y
Writing Oracle ASM library driver configuration            [  OK  ]
Creating /dev/oracleasm mount point                        [  OK  ]
Loading module "oracleasm"                                 [  OK  ]
Mounting ASMlib driver filesystem                          [  OK  ]
Scanning system for ASM disks                              [  OK  ]
                              

現在,如下所示啓用 ASMLib 驅動程序。

 

# /etc/init.d/oracleasm enable
Writing Oracle ASM library driver configuration            [  OK  ]
Scanning system for ASM disks                              [  OK  ]
                              

爲 ASM 配置磁盤

接下來,告訴 ASM 驅動程序您要使用的磁盤。請注意,這些磁盤是不包含任何內容(甚至不包含分區)的空磁盤。可以將磁盤分區用於 ASM,但建議您不要這樣做。

通過以 root 用戶身份運行以下命令來標記由 ASMLib 使用的磁盤:

/etc/init.d/oracleasm createdisk DISK_NAME device_name
                              

(提示:DISK_NAME 應由大寫字母組成。當前版本有一個錯誤,即如果使用小寫字母,ASM 實例將無法識別磁盤。)

例如:
# /etc/init.d/oracleasm createdisk VOL1 /dev/sdb
Marking disk "/dev/sdb" as an ASM disk                     [  OK  ]
# /etc/init.d/oracleasm createdisk VOL2 /dev/sdc
Marking disk "/dev/sdc" as an ASM disk                     [  OK  ]
# /etc/init.d/oracleasm createdisk VOL3 /dev/sdd
Marking disk "/dev/sdd" as an ASM disk                     [  OK  ]
# /etc/init.d/oracleasm createdisk VOL4 /dev/sdf
Marking disk "/dev/sdf" as an ASM disk                     [  OK  ]
# /etc/init.d/oracleasm createdisk VOL5 /dev/sdg
Marking disk "/dev/sdg" as an ASM disk                     [  OK  ]
# /etc/init.d/oracleasm createdisk VOL6 /dev/sdh
Marking disk "/dev/sdh" as an ASM disk                     [  OK  ]
                              

以下示例演示瞭如何列出標記爲由 ASMLib 使用的所有磁盤。

# /etc/init.d/oracleasm listdisks
VOL1
VOL2
VOL3
VOL4
VOL5
VOL6
                              

既然已經安裝了 ASMLib,且已將磁盤標記爲可用,下面,您便可以創建一個 ASM 實例,並構建一個使用 ASM 進行磁盤存儲的數據庫。最容易的方法就是使用數據庫配置助手 (DBCA) 來完成此操作。

以 oracle 身份登錄並啓動 DBCA:

$ dbca

 

  1. 歡迎
    • 單擊 Next
  2. 操作
    • 選擇 Create a Database
  3. 數據庫模板
    • 選擇 General Purpose
  4. 數據庫標識
    • 輸入全局數據庫名稱。
  5. 管理選項
    • 選擇 Configure the Database with Enterprise Manager
    • 選擇 Use Database Control for Database Management
  6. 數據庫證書
    • 選擇 Use Same Password for All Accounts
    • 輸入口令並確認。
  7. 存儲選項
    • 選擇 Automatic Storage Management (ASM)
  8. 創建 ASM 實例
    • 輸入 ASM 實例的口令並確認。
  9. 彈出一個窗口,提示 DBCA 將立即創建並啓動 ASM 實例。
    • 單擊 OK
  10. 創建 ASM 實例時彈出一個帶齒輪箱窗口。
  11. ASM 磁盤組
    • 由於這是新 ASM 實例且您尚未創建任何 ASM 實例,因此該窗口未顯示可用磁盤組。
    • 單擊 Create New
  12. 創建磁盤組
    • 磁盤組名稱
      - 輸入磁盤組名稱,如 DATA1。
    • 冗餘
      - High 鏡像數據兩次。
      - Normal 鏡像數據一次。
      - External 不鏡像 ASM 中的數據。如果外部 RAID 陣列提供冗餘,則通常使用此選項。
    • 選擇成員磁盤
      - 您必須手動指示 ASM 到什麼地方查找 ASMLib 磁盤,因此,單擊 Change Disk Discovery Path
      -
      彈出一個窗口,提示輸入磁盤發現路徑。如下所示將磁盤發現路徑更改爲“ORCL:*”。
      - 單擊 OK 繼續。
    • 您將返回到 Select Member Disks 窗口。您的所有 ASMLib 磁盤現在應顯示在此窗口中。
      單擊該行開頭的框,選擇加入磁盤組的磁盤。完成後單擊 OK
  13. ASM 磁盤組
    • 您將返回到 ASM Disk Groups 窗口。此時,出現在上一步中創建的磁盤組。
    • 單擊該行開頭的框選擇此磁盤組。(在此實例中使用單個磁盤組。)
    • 單擊 Next
  14. 數據庫文件位置
    • 選擇 Use Oracle-Managed Files
    • 確保已將 Database Area 設置爲您創建的磁盤組。它包含一個前導加號 — 例如,+DATA1。
  15. 恢復配置
    • 選擇 Specify Flash Recovery Area
      - 快速恢復區 — 輸入要用於快速恢復的 ASM 磁盤組。
      - 快速恢復區大小 — 接受默認值 2048。
    • 如果要使用歸檔日誌模式,則選中 Enable Archiving。對於評估數據庫,可以不選該項。
  16. 數據庫內容
    • 選擇 Sample Schemas
    • 我們不使用定製腳本,因此單擊 Next
  17. 初始化參數
    • 接受默認值,然後單擊 Next
  18. 數據庫存儲
    • 接受默認值,然後單擊 Next
  19. 創建選項
    • 選擇 Create Database(默認值)並單擊 Finish
  20. 確認
    • 檢查完數據庫詳細信息後單擊 OK
  21. DBCA 顯示一個操作列表和一個進度條。根據硬件的不同,數據庫創建可能需要幾分鐘到幾小時的時間。
  22. 當數據庫創建完成時,將顯示一個顯示摘要窗口。記下 Enterprise Manager URL,然後單擊 Exit

 


結論

現在,您的數據庫已經啓動並運行,您可以開始使用 Oracle 10g 中提供的許多新特性。最好從 Oracle Enterprise Manager 開始使用,這是因爲它是徹底地重新編寫的,採用了基於 Web 的界面。如果不確定從何處開始,Oracle 概念指南DBA 兩日速成指南 將幫助您熟悉新數據庫。OTN 還提供了一些旨在幫助您充分利用 10g 的文章。我最喜歡的是由 Arup Nanda 編寫的系列文章“Oracle 數據庫 10g:爲 DBA 提供的 20 個最重要的特性。”

在下一篇文章中,我們將逐步講解如何安裝和配置一個功能齊全的雙節點 Oracle RAC 10g 數據庫。

 


附錄

 

使用 SQL*Plus 訪問數據庫

以 oracle 身份登錄到 Linux。設置環境。

設置 Oracle 環境變量:

$ export ORACLE_BASE=/u01/app/oracle
$ export ORACLE_SID=demo1
$ export ORACLE_HOME=$ORACLE_BASE/product/10.1.0/db_1
$ export PATH=$PATH:$ORACLE_HOME/bin
                              

運行 SQL*Plus:

$ sqlplus

SQL*Plus:Release 10.1.0.2.0 - Production on Sat Jun 5 16:59:21 2004

Copyright (c) 1982, 2004, Oracle.All rights reserved.

Enter user-name:/ as sysdba

Connected to:
Oracle Database 10g Enterprise Edition Release 10.1.0.2.0 - Production
With the Partitioning, OLAP and Data Mining options

SQL> 
                              

使用 Oracle Enterprise Manager 10g 數據庫控制

在 Web 瀏覽器中,連接到安裝過程中提供的 URL。

例如:
http://ds1.orademo.org:5500/em(如果服務器不在 DNS 中,則必須使用 IP 地址代替主機名。)

用戶名: SYS
口令: <安裝過程中選擇的口令>
連接爲: SYSDBA

單擊 <Login>

圖 6

歡迎走入 Oracle Enterprise Manager 10g 數據庫控制的精彩世界!

啓動和停止 Oracle Enterprise Manager 數據庫控制:

$ emctl start dbconsole
$ emctl stop dbconsole
                              

使用 iSQL*Plus 訪問數據庫

iSQL*Plus 是歷史悠久的 SQL*Plus 交互式工具的基於 Web 的版本,用於訪問數據庫。要使用 iSQL*Plus,請單擊 OEM 控制檯 Related Links 部分中的 iSQL*Plus 鏈接,或將瀏覽器指向安裝過程中提供的 iSQL*Plus URL。

例如:
http://ds1.orademo.org:5560/isqlplus(如果數據庫服務器不在 DNS 中,則必須使用 IP 地址代替主機名。)

用戶名: SYSTEM
口令: <安裝過程中選擇的口令>

單擊 <Login>。

在 Workspace 框中輸入 SQL 命令,然後單擊 Execute

圖 7

啓動和停止 iSQL*Plus:

$ isqlplusctl start
$ isqlplusctl stop
                              

啓動和停止監聽器:

監聽器接受客戶端的連接請求,並在驗證證書後創建數據庫連接。要使用 OEM 或 iSQL*Plus,必須先啓動監聽器。

$ lsnrctl start
$ lsnrctl stop
                              

啓動和停止數據庫:

啓動和停止數據庫的最簡單方法是從 OEM 控制檯啓動和停止。要從命令行執行此操作,請在以 oracle 身份登錄後使用 SQL*Plus,如下所示:

啓動:

$ sqlplus

SQL*Plus:Release 10.1.0.2.0 - Production on Sun Jun 13 22:27:48 2004

Copyright (c) 1982, 2004, Oracle.All rights reserved.

Enter user-name:/ as sysdba
Connected to an idle instance.

SQL> startup
ORACLE instance started.

Total System Global Area  188743680 bytes
Fixed Size                   778036 bytes
Variable Size             162275532 bytes
Database Buffers           25165824 bytes
Redo Buffers                 524288 bytes
Database mounted.
Database opened.
SQL> exit
                              

Shutdown:

$ sqlplus

SQL*Plus:Release 10.1.0.2.0 - Production on Sun Jun 13 22:25:55 2004

Copyright (c) 1982, 2004, Oracle.All rights reserved.

Enter user-name:/ as sysdba

Connected to:
Oracle Database 10g Enterprise Edition Release 10.1.0.2.0 - Production
With the Partitioning, OLAP and Data Mining options

SQL> shutdown immediate
Database closed.
Database dismounted.
ORACLE instance shut down.
SQL> exit
                              

列出 Oracle 進程:

$ ps a€“fuoracle
                              

什麼是 ocssd.bin 進程?

Oracle 集羣同步服務 (OCSSD) 是 Oracle 集羣就緒服務 (CRS) 的一個組件,用於 RAC 和使用 ASM 的單個實例數據庫。它在默認情況下安裝,使用很少的系統資源,並在 /etc/inittab 中進行配置。這些進程在系統每次啓動時自動啓動。Oracle 建議不要禁用 OCSSD,即使您未運行 ASM。

 


John Smiley ( [email protected]) 是 TUSC Inc 的一位技術管理顧問。作爲 DBA、開發人員和項目經理,他具有 18 年的 Oracle 系統使用經驗。他專門從事高級性能調整、Oracle 真正應用集羣、PL/SQL 編程、容量規劃以及與 UNIX 有關的邏輯和物理數據庫設計。



>>>安裝過程中的錯誤處理

ons庫錯,在app/oracle/product/12.1.0/dbhome_1/rdbms/lib/ins_rdbms.mk 中883加-lons

ztcsh庫錯,在app/oracle/product/12.1.0/dbhome_1/rdbms/lib/ins_rdbms.mk 中加 -lnnz12



發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章