插件窝 干货文章 oracle数据库安装和配置

oracle数据库安装和配置

Oracle 配置 安装 数据库 995    来源:    2025-03-29

Oracle数据库安装与配置指南

一、安装前准备

系统要求检查

  1. 硬件要求

    • 内存:至少1GB(建议4GB以上)
    • 磁盘空间:企业版至少5.5GB,标准版至少5GB
    • 交换空间:内存的1.5-2倍
  2. 软件要求

    • 操作系统:确认Oracle官方支持的操作系统版本
    • 依赖包:根据OS不同需要安装特定包(如libaio、ksh等)
  3. 用户和组创建

    groupadd oinstall
    groupadd dba
    useradd -g oinstall -G dba oracle
    passwd oracle
    

环境配置

  1. 内核参数调整(Linux示例):

    # 编辑/etc/sysctl.conf
    fs.aio-max-nr = 1048576
    fs.file-max = 6815744
    kernel.shmall = 2097152
    kernel.shmmax = 4294967295
    kernel.shmmni = 4096
    kernel.sem = 250 32000 100 128
    net.ipv4.ip_local_port_range = 9000 65500
    net.core.rmem_default = 262144
    net.core.rmem_max = 4194304
    net.core.wmem_default = 262144
    net.core.wmem_max = 1048576
    
  2. 用户限制设置

    # 编辑/etc/security/limits.conf
    oracle soft nproc 2047
    oracle hard nproc 16384
    oracle soft nofile 1024
    oracle hard nofile 65536
    
  3. Oracle环境变量

    # 在oracle用户.bash_profile中添加
    export ORACLE_BASE=/u01/app/oracle
    export ORACLE_HOME=$ORACLE_BASE/product/19.0.0/dbhome_1
    export ORACLE_SID=orcl
    export PATH=$ORACLE_HOME/bin:$PATH
    export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib
    export NLS_LANG=AMERICAN_AMERICA.AL32UTF8
    

二、安装Oracle数据库

图形界面安装步骤

  1. 下载Oracle数据库软件包
  2. 解压安装文件
  3. 以oracle用户身份运行安装程序: bash ./runInstaller
  4. 按照向导完成安装:

    • 选择安装选项(创建和配置数据库)
    • 选择系统类(服务器类)
    • 选择安装类型(典型安装或高级安装)
    • 指定Oracle基目录和软件位置
    • 选择数据库配置类型(通用或事务处理)
    • 设置数据库标识符(SID)
    • 指定管理密码
    • 选择字符集(推荐AL32UTF8)
    • 完成先决条件检查
    • 执行安装
  5. 以root身份运行配置脚本:

    /u01/app/oraInventory/orainstRoot.sh
    /u01/app/oracle/product/19.0.0/dbhome_1/root.sh
    

静默安装(适用于无GUI环境)

./runInstaller -silent -responseFile /path/to/response.rsp -ignorePrereq

三、数据库配置

基本配置

  1. 监听器配置

    lsnrctl start
    lsnrctl status
    
  2. 数据库启动/停止

    -- 连接到SQL*Plus
    sqlplus / as sysdba
    
    -- 启动数据库
    STARTUP;
    
    -- 关闭数据库
    SHUTDOWN IMMEDIATE;
    
  3. 创建表空间

    CREATE TABLESPACE users 
    DATAFILE '/u01/app/oracle/oradata/orcl/users01.dbf' SIZE 100M
    AUTOEXTEND ON NEXT 10M MAXSIZE UNLIMITED;
    

网络配置

  1. 配置tnsnames.ora

    ORCL =
     (DESCRIPTION =
       (ADDRESS = (PROTOCOL = TCP)(HOST = hostname)(PORT = 1521))
       (CONNECT_DATA =
         (SERVER = DEDICATED)
         (SERVICE_NAME = orcl)
       )
     )
    
  2. 测试连接

    tnsping orcl
    sqlplus username/password@orcl
    

四、安全配置

  1. 修改默认密码

    ALTER USER sys IDENTIFIED BY new_password;
    ALTER USER system IDENTIFIED BY new_password;
    
  2. 创建新用户

    CREATE USER app_user IDENTIFIED BY password
    DEFAULT TABLESPACE users
    TEMPORARY TABLESPACE temp
    QUOTA UNLIMITED ON users;
    
    GRANT CONNECT, RESOURCE TO app_user;
    
  3. 启用审计

    AUDIT CREATE SESSION;
    AUDIT SELECT TABLE, INSERT TABLE, DELETE TABLE, UPDATE TABLE;
    

五、性能优化配置

  1. 内存配置

    -- 查看当前内存配置
    SHOW PARAMETER memory_target;
    SHOW PARAMETER sga_target;
    SHOW PARAMETER pga_aggregate_target;
    
    -- 修改内存配置
    ALTER SYSTEM SET memory_target=2G SCOPE=SPFILE;
    ALTER SYSTEM SET sga_target=1500M SCOPE=SPFILE;
    ALTER SYSTEM SET pga_aggregate_target=500M SCOPE=SPFILE;
    
  2. 自动维护任务配置

    -- 查看自动维护任务
    SELECT client_name, status FROM dba_autotask_client;
    
    -- 禁用/启用特定任务
    BEGIN
     DBMS_AUTO_TASK_ADMIN.DISABLE(
       client_name => 'auto optimizer stats collection',
       operation   => NULL,
       window_name => NULL);
    END;
    /
    

六、备份与恢复配置

  1. 配置RMAN

    rman target /
    
  2. 基本备份命令

    -- 完整数据库备份
    BACKUP DATABASE PLUS ARCHIVELOG;
    
    -- 表空间备份
    BACKUP TABLESPACE users;
    
    -- 控制文件备份
    BACKUP CURRENT CONTROLFILE;
    
  3. 配置自动备份

    CONFIGURE CONTROLFILE AUTOBACKUP ON;
    CONFIGURE RETENTION POLICY TO RECOVERY WINDOW OF 7 DAYS;
    

七、常见问题解决

  1. ORA-12514: TNS:listener does not currently know of service requested

    • 检查监听器服务是否启动
    • 确认tnsnames.ora中的服务名与数据库实际服务名一致
    • 在数据库中执行:ALTER SYSTEM REGISTER;
  2. ORA-01034: ORACLE not available

    • 检查Oracle服务是否启动
    • 尝试:STARTUP MOUNT; 然后 ALTER DATABASE OPEN;
  3. 空间不足问题

    • 检查表空间使用情况:

      SELECT tablespace_name, round(sum(bytes)/1024/1024) "Size (MB)"
      FROM dba_data_files GROUP BY tablespace_name;
      
      SELECT tablespace_name, round(sum(bytes)/1024/1024) "Free (MB)"
      FROM dba_free_space GROUP BY tablespace_name;
      
    • 扩展表空间: sql ALTER TABLESPACE users ADD DATAFILE '/path/to/newfile.dbf' SIZE 500M;

八、后续维护建议

  1. 定期检查alert日志:$ORACLE_BASE/diag/rdbms/$ORACLE_SID/trace/alert_$ORACLE_SID.log
  2. 设置定期备份策略
  3. 定期收集统计信息:EXEC DBMS_STATS.GATHER_DATABASE_STATS;
  4. 监控性能视图:V$SESSION, V$SQL, V$SYSTEM_EVENT等

以上是Oracle数据库安装与配置的基本流程,具体细节可能需要根据实际环境和Oracle版本进行调整。