下载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,添加如下内容
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: O R A C L E H O M E / b i n 连 接 数 据 s u o r a c l e s q l p l u s / a s s y s d b a − − 查 看 当 前 的 所 有 数 据 库 s e l e c t n a m e f r o m v ORACLE_HOME/bin 连接数据 su oracle sqlplus / as sysdba -- 查看当前的所有数据库 select name from v ORACLEHOME/bin连接数据suoraclesqlplus/assysdba−−查看当前的所有数据库selectnamefromvdatabase;
– 查看当前库结构 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
[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;