zoukankan      html  css  js  c++  java
  • oracle 数据库RPM安装方式

    下载RPM包

    Oracle Database Software Downloads 下载Linux x86-64 对应的RPM
    oracle-database-ee-19c-1.0-1.x86_64.rpm
    oracle-database-preinstall-19c-1.0-1.el7.x86_64.rpm
    compat-libcap1-1.10-7.el7.x86_64.rpm
    compat-libstdc++-33-3.2.3-72.el7.x86_64.rpm

    安装

    # 安装依赖组件
    yum -y install libnsl 
    
    cd 下载目录
    yum -y install compat-libcap1-1.10-7.el7.x86_64.rpm
    yum -y install compat-libstdc++-33-3.2.3-72.el7.x86_64.rpm
    yum -y install oracle-database-preinstall-19c-1.0-1.el7.x86_64.rpm
    yum -y install  oracle-database-ee-19c-1.0-1.x86_64.rpm
    

    初始化

    /etc/init.d/oracledb_ORCLCDB-19c configure
    

    添加oracle环境变量

    编辑 /etc/profile,添加如下内容

    ## ORACLE
    export ORACLE_BASE=/opt/oracle
    export ORACLE_HOME=/opt/oracle/product/19c/dbhome_1
    export ORACLE_SID=ORCLCDB
    
    export PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin:$ORACLE_HOME/bin
    

    连接数据

    su oracle
    sqlplus / as sysdba
    
    --  查看当前的所有数据库
    select name from v$database;
    
    -- 查看当前库结构
    desc v$database;
    
    -- 查看SID
    select instance_name from v$instance;
    
    -- 查看服务名
    select name from dba_services;
    
    -- 查看当前库的所有数据表
    select TABLE_NAME from all_tables;
    
    -- 查看用户
    select * from dba_users; --查看数据库里面所有用户,前提是你是有dba权限的帐号,如sys,system
    select * from all_users;  --查看你能管理的所有用户!
    select * from user_users; --查看当前用户信息 !
    
    -- 创建用户
    create user 用户名 identified by 密码;
    /*
    common user:公共用户名必须以C##或c##开头。公共用户可以访问全部CDB
    
    local user: 本地用户不能以C##或c##开头。本地用户只能访问特定的PDB
    */
    
    -- 给用户修改密码,密码不能以数字开头
    alter user 用户名 identified by 新密码;
    
    
    -- 给用户分配权限
    grant create 权限 to 用户名;
    
    /*
    create session(登录权限)
    create table(创建表权限)
    create index(创建索引权限)
    create view(创建视图权限)
    create sequence(创建序列权限)
    create trriger(创建触发器权限)
    insert: 增
    delete: 删
    update: 改
    select: 查
    */
    
    -- 按角色对用户分配权限
    grant 角色名 to 用户名;
    
    /*
    常见角色:
    dba、connect、resource
    
    
    -- connect角色
    是授予最终用户的典型权利,最基本的权利,能够连接到Oracle数据库中,并在对其他用户的表有访问权限时,做SELECT、UPDATE、INSERTT等操作。
    alter session --修改会话
    create cluster --建立聚簇
    create database link --建立数据库连接
    create sequence --建立序列
    create session --建立会话
    create synonym --建立同义词
    create view --建立视图
    
    -- resoure角色
    是授予开发人员的,能在自己的方案中创建表、序列、视图等。
    create cluster --建立聚簇
    create procedure --建立过程
    create sequenc --建立序列
    create table --建表
    create trigger --建立促发器
    create type --建立类型
    
    DBA角色
    是授予系统管理员的,拥有该角色的用户就能成为系统管理员了,它拥有所有的系统权限。
    */
    
    
    -- 回收权限
    revoke 权限/角色 from 用户名;
    
    -- 创建表
    CREATE TABLE STUINFO (
        id NUMBER(5) PRIMARY KEY,
        name VARCHAR2(7) NOT NULL,
        age NUMBER(2) NULL,
        sex CHAR(1) NULL,
        grade CHAR(4) NULL 
    )
    
    -- 插入一条记录
    INSERT INTO STUINFO (ID, NAME, AGE, SEX, GRADE) VALUES
    (1, 'lily', 12, 'f', 'c6');
    
    -- 批量插入
    INSERT ALL
    	INTO STUINFO VALUES(2, 'kemen', 12, 'm', 'c6') 
    	INTO STUINFO VALUES(3, 'kaka', 11, 'm', 'c5')
    	INTO STUINFO VALUES(4, 'daly', 13, 'f', 'c6')
    select 1 from dual;
    
    SELECT * from STUINFO;
    
    

    设置oracle服务自启

    已经提供一个服务控制脚本:/etc/init.d/oracledb_ORCLCDB-19c
    名字太长,可以改为:/etc/init.d/oracle

    • 配置 /etc/oratab
      下面这行的 "N" 改为"Y"
    ORCLCDB:/opt/oracle/product/19c/dbhome_1:Y
    
    • 添加到系统服务
    chkconfig --add oracle
    
    # 可以看到生成的启动脚本
    cat /run/systemd/generator.late/graphical.target.wants/oracle.service 
    
    # Automatically generated by systemd-sysv-generator
    
    [Unit]
    Documentation=man:systemd-sysv-generator(8)
    SourcePath=/etc/rc.d/init.d/oracle
    Description=SYSV: This script is responsible for taking care of configuring the Oracle Database and its associated services.
    Before=multi-user.target
    Before=multi-user.target
    Before=multi-user.target
    Before=graphical.target
    
    [Service]
    Type=forking
    Restart=no
    TimeoutSec=5min
    IgnoreSIGPIPE=no
    KillMode=process
    GuessMainPID=no
    RemainAfterExit=yes
    ExecStart=/etc/rc.d/init.d/oracle start
    ExecStop=/etc/rc.d/init.d/oracle stop
    

    其它

    lsnrctl是oracle的监听器,
    lsnrctl start
    lsnrctl stop
    lsnrctl satus
    
    
    • 手动正常关闭oracle服务方法:
    su oracle
    sqlplus / as sysdba
    
    shutdown immediate;
    
  • 相关阅读:
    mojoportal学习——文章翻译之超过3个内容面板
    mojoportal学习——文章翻译之mojoportal的皮肤模板
    mojoportal中替换第一层菜单中的连接为空连接
    mojoportal学习——文章翻译之不同的模块使用不同的风格
    mojoportal学习——文章翻译之layout.master文件
    mojoportal学习——文章翻译之mojoportal高级功能之菜单子站点化
    GridView选中行变色(无刷新)
    页面之间传递参数的几种方法荟萃
    ASP.NET程序中常用的三十三种代码(一)
    ASP.NET设计应用程序的七大绝招
  • 原文地址:https://www.cnblogs.com/linkenpark/p/11896139.html
Copyright © 2011-2022 走看看