【Red Hat 7.9---详细安装Oracle 11g】---图形化界面方式

原文:https://blog.csdn.net/qq_41840843/article/details/131198718?spm=1001.2014.3001.5501

🔻 一、安装前规划

规划项(本环境)描述
操作系统版本Red Hat Enterprise Linux Server release 7.9 (Maipo)
主机名db-oracle
数据库版本Oracle 11g
Ip规划192.168.181.71
服务器空间要求根据实际要求
数据库名/实例名orcl
数据库块大小oracle建库一般设置数据库块大小8192K
数据库使用字符集这里用AL32UTF8 字符集

UFT8与GBK的区别:
区别主要是他们占用的字节不同(汉字),UTF8占用三个字节,而GBK占用两个字节,

如varchar2(30)类型

如果是utf8,只能输入10汉字;

而gbk则可以输入15个汉字。

一般生产环境服务器空间规划要求(可根据业务量自行调整)
/                                                  ------100G
数据库安装目录(如:/u01)    ------100G
数据存储目录(如:/oradata)  ------500G
归档目录(如:/archive)         ------500G(一般和数据目录一致)
备份目录(如:/backup)         ----------1.5T(一般是数据目录3倍左右)

🔻 二、安装前准备一(系统参数修改)

⛳ 2.1 内核版本、系统版本查看

# 64位
[root@db-oracle ~]# uname -m
x86_64# 查看内核版本
[root@db-oracle ~]# cat /proc/version
Linux version 3.10.0-1160.el7.x86_64 (mockbuild@x86-vm-26.build.eng.bos.redhat.com) (gcc version 4.8.5 20150623 (Red Hat 4.8.5-39) (GCC) ) #1 SMP Tue Aug 18 14:50:17 EDT 2020
[root@db-oracle ~]#[root@db-oracle ~]# uname -a
Linux db-oracle 3.10.0-1160.el7.x86_64 #1 SMP Tue Aug 18 14:50:17 EDT 2020 x86_64 x86_64 x86_64 GNU/Linux
[root@db-oracle ~]## 查看系统版本
[root@db-oracle ~]# cat /etc/redhat-release
Red Hat Enterprise Linux Server release 7.9 (Maipo)
[root@localhost ~]#

⛳ 2.2 修改主机名-重启生效

[root@db-oracle ~]# vi /etc/hosts

[root@db-oracle ~]# vi /etc/hostname

⛳ 2.3 关闭selinux

关闭selinux可以提高系统的性能,因为 selinux会对系统进行安全检查,这会消耗一定的系统资源。

[root@db-oracle ~]# vi /etc/selinux/config

# 将SELINUX= enforcing  修改 为:SELINUX=disabled 

防火墙有关命令
-- 关闭防火墙
[root@db-oracle ~]# systemctl stop firewalld-- 开启防火墙
[root@db-oracle ~]# systemctl start firewalld-- 重启防火墙
[root@db-oracle ~]# systemctl restart firewalld-- 防火墙状态查看
[root@db-oracle ~]# systemctl status firewalld-- 禁止开机启动
[root@db-oracle ~]# systemctl disable firewalld-- 设置开机启动
[root@db-oracle ~]# systemctl enable firewalld

⛳ 2.4 防火墙设置1521端口开放

-- 设置1521端口开放
[root@db-oracle ~]# firewall-cmd --zone=public --add-port=1521/tcp --permanent
success
[root@db-oracle ~]#-- 重启防火墙,查看开放端口列表
[root@db-oracle ~]# firewall-cmd --list-ports
1521/tcp
[root@db-oracle ~]#

⛳ 2.5 系统相关配置检查

-- 查看磁盘占用的空间
[root@db-oracle ~]# df -h-- 查看内存总量
[root@db-oracle ~]# grep MemTotal /proc/meminfo-- 查看空闲内存量
[root@db-oracle ~]# grep MemFree /proc/meminfo

安装oracle 11g对于共享内存(/dev/shm)要求/dev/shm空间不能小于分配给oracle使用内存的大小

2.5.1 🍁 修改/dev/shm 大小(/dev/shm空间不能小于分配给oracle使用内存的大小)
[root@db-oracle ~]# vi /etc/fstab###文本末添加内容
tmpfs	/dev/shm	tmpfs   defaults,size=4096M	  0 0
-- 重新挂载/dev/shm
[root@db-oracle ~]# mount -o remount /dev/shm

2.5.2 🍁 /tmp(临时文件存储空间) >1G
[root@db-oracle ~]# df -h /tmp

2.5.3 🍁 /u01(软件安装目录) >2.5G
[root@db-oracle ~]# df -h /u01

2.5.4 🍁 内核需求
安装数据库11G操作系统内核需求
On Oracle Linux 4 and Red Hat Enterprise Linux 42.6.9 or later
On Oracle Linux 5 Update 52.6.32-100.0.19 or later
On Oracle Linux 5 Update 22.6.18 or later (with Red Hat Compatible Kernel)

On Oracle Linux 6

2.6.32-100.28.5.el6.x86_64 or later
On Oracle Linux 62.6.32-71.el6.x86_64 or later (with Red Hat Compatible Kernel)

Oracle 11gR2要求OS至少为RHEL4.7,内核为Kernel 2.6.9

⛳ 2.6 系统光盘镜像文件挂载—配置本地yum源

一般生产环境无法访问外网,在内网环境可以使用系统ISO镜像文件作为本地yum源,在服务器上挂载DVD的 iso 文件。

2.6.1 🍁 上传iso镜像文件并挂载到 /mnt/dvd/ 下
-- 创建镜像文件挂载目录/mnt/dvd
[root@db-oracle ~]# mkdir /mnt/dvd

###上传rhel-server-7.9-x86_64-dvd.iso文件到 /usr/local/src

-- 挂载iso文件(只能读,不可写)
[root@db-oracle src]# mount -t iso9660 -o loop /usr/local/src/rhel-server-7.9-x86_64-dvd.iso /mnt/dvd-- 重新以可读可写的方式挂载
[root@db-oracle src]# mount -o remount,rw /
-- 设置开机自动挂载本地镜像文件
[root@db-oracle src]# vi /etc/fstab# 文末添加内容
/usr/local/src/rhel-server-7.9-x86_64-dvd.iso    /mnt/dvd    iso9660   loop    0    0

# df -h 查看挂载情况
[root@db-oracle ~]# df -h

2.6.2 🍁 备份yum源文件
[root@db-oracle ~]# cd /etc/yum.repos.d/
[root@db-oracle yum.repos.d]# more redhat.repo

-- 备份yum源文件
[root@db-oracle yum.repos.d]# cp redhat.repo redhat.repo-bak
2.6.3🍁 本地yum源配置
[root@db-oracle ~]# cd /etc/yum.repos.d/
[root@db-oracle yum.repos.d]# vi redhat.repo

# 标识符
[redhat]# 名称
name=Red Hat Enterprise Linux 7.9   # 本地yum源地址
baseurl=file:///mnt/dvd#  下载的rpm不进行校验
gpgcheck=0#启用状态
enabled=1
2.6.4🍁 验证本地yum源配置
-- 清除yum缓存
[root@db-oracle ~]# yum clean all

-- 缓存本地yum源中的软件包信息
[root@db-oracle ~]# yum makecache

-- 查询仓库中的所有软件包
[root@db-oracle ~]# yum list

⛳ 2.7 Orange11g有关依赖包检查及安装

-- Orange11g有关依赖包检查
rpm -q  binutils \
compat-libcap1 \
compat-libstdc++ \
gcc \
gcc-c++ \
glibc \
glibc-devel \
ksh \
libaio \
libaio-devel \
libgcc \
libstdc++ \
libstdc++-devel \
libXi \
libXtst \
make  \
sysstat \
unixODBC \
unixODBC-devel \ | grep "not installed"

----提前安装有关依赖

-- 安装有关依赖
yum install gcc* binutils* compat* glibc* ksh* libgcc* libstdc* libaio* make* sysstat* unixODBC* -y

分享 一个rpm 下载的网站,compat-libstdc++ (这里可以搜索下载,平时有缺少的依赖,都可在这搜索)

-- 手动上传安装compat-libstdc++
[root@db-oracle ~]# rpm -ivh compat-libstdc+±8-3.3.4.2.x86_64.rpm --force --nodeps
warning: compat-libstdc+±8-3.3.4.2.x86_64.rpm: Header V3 DSA/SHA1 Signature, key ID 4f2a6fd2: NOKEY
Preparing… ################################# [100%]
Updating / installing…
1:compat-libstdc+±8-3.3.4.2 ################################# [100%]
[root@db-oracle ~]#

----有关依赖包再次检查 

⛳ 2.8 修改资源限制参数并使其生效

对oracle用户做资源的限制,主要是出于性能上的考虑,防止oracle用户过渡消耗有限资源,使系统变得臃肿缓慢。

 

# 步骤一、备份limits.conf 文件,limits.conf只针对于单个会话。
[root@db-oracle ~]# cp /etc/security/limits.conf /etc/security/limits.conf-bak[root@db-oracle ~]# vi /etc/security/limits.conf###文末添加内容
oracle 	soft	nproc	2047oracle	hard	nproc	16384oracle	soft	nofile	1024oracle	hard	nofile	65536oracle	soft	stack	10240oracle	hard	stack	32768oracle 	soft	memlock	3145728oracle 	hard	memlock	3145728

注意:资源限制参数分为软限制和硬限制
nproc ----进程最大数目
nofile ----进程打开文件的最大数目
stack ----最大栈大小
memlock ----最大锁定内存地址空间(要比实际内存小,如内存4G,设置3G最大锁定内存地址空间,则为3x1024x1024=3145728)

--------其他配置项------------------------
core ----限制内核文件的大小
data ----最大数据大小
fsize ----最大文件大小
rss ---- 最大持久设置大小
cpu---- 以分钟为单位的最多 CPU 时间
as ---- 地址空间限制
maxlogins---- 此用户允许登录的最大数目

步骤二、使 limits.conf 文件配置生效,必须要确保 pam_limits.so 文件被加入到启动文件中。vi /etc/pam.d/login 文件,文末添加内容:
session required /lib/security/pam_limits.so

 

⛳ 2.9 系统内核参数修改

-- 步骤一、备份编辑内核参数文件sysctl.conf
[root@db-oracle ~]# cp /etc/sysctl.conf /etc/sysctl.conf-bak
[root@db-oracle ~]# vi /etc/sysctl.conf###文末添加内容
fs.aio-max-nr = 1048576fs.file-max = 6815744kernel.shmmni = 4096kernel.shmmax = 2576980377kernel.shmall = 629145vm.nr_hugepages = 1457kernel.sem = 250 32000 100 128net.ipv4.ip_local_port_range = 9000 65500net.core.rmem_default = 262144net.core.rmem_max = 4194304net.core.wmem_default = 262144net.core.wmem_max = 1048576

 

系统内核参数详解,关注该四个: 

1、kernel.shmmax      ----单个共享内存段的最大值(如系统内存4G,则oracle 内存为0.8x4G=3.2G(SGA=0.8x3.2G+PGA=0.2x3.2G)) >= SGA的值,则最终值应该>=0.8x3.2Gx1024x1024x1024
2、kernel.shmall         -----控制共享内存页数(kernel.shmmax/PAGESIZE)

-- PAGESIZE—页数查看
[root@db-oracle ~]# getconf PAGESIZE
4096
[root@db-oracle ~]#
3、kernel.shmmni       -----共享内存段的最大数量 = 4096(和每页大小一致即可)

4、vm.nr_hugepages  -----大页,直接分配并保留对应大小的内存区域(SGA/2M稍微大一点,加200M左右),如(0.8x3.2Gx1024x1024x1024)/(1024x1024)

 

-- 步骤二、使内核参数文件sysctl.conf生效,重新加载配置文件
[root@db-oracle ~]# sysctl -p

 

⛳ 2.10 用户创建进程数的限制

nproc是操作系统级别对每个用户创建进程数的限制.

-- 设置每个用户创建进程最大数为16384
[root@db-oracle ~]# echo "* - nproc 16384 ">/etc/security/limits.d/90-nproc.conf
[root@db-oracle ~]# cat /etc/security/limits.d/90-nproc.conf
* - nproc 16384
[root@db-oracle ~]#

拓展:
1、查看所有用户创建的进程数,使用命令:
[root@db-oracle ~]# ps h -Led -o user | sort | uniq -c | sort -n

2、查看某个用户创建的进程数,使用命令:
[root@db-oracle ~]# ps -o nlwp,pid,lwp,args -u root | sort -n 

🔻 三、安装前准备(创建用户、用户组以及安装目录)

注:在安装任何软件设置的用户和用户密码都要做好记录

⛳ 3.1 创建用户组

 

-- 创建oinstall用户组—控制软件安装,补丁安装
[root@db-oracle ~]# /usr/sbin/groupadd -g 5001 oinstall###创建dba用户组—控制数据库创建、管理
[root@db-oracle ~]# /usr/sbin/groupadd -g 5002 dba###创建oper用户组—数据库操作员
[root@db-oracle ~]# /usr/sbin/groupadd -g 5003 oper
[root@db-oracle ~]#

拓展:删除用户组
[root@db-oracle ~]# groupadd test
[root@db-oracle ~]# useradd -g test -G dba test
[root@db-oracle ~]# groupdel test
groupdel: cannot remove the primary group of user ‘test’
[root@db-oracle ~]#
如果组里面有用户需要先删除用户或移动用户,才能删除组

-- 删除用户
[root@db-oracle ~]# userdel test

⛳ 3.2 创建oracle用户和设置密码

-- 创建oracle用户—编号为6001,默认组为oinstall,并添加到dba,oper组,主要是oinstall组发生作用
[root@db-oracle ~]# useradd -u 6001 -g oinstall -G dba,oper oracle-- passwd oracle ----设置oracle用户密码(Zyl@0411)[root@db-oracle ~]# passwd oracle
Changing password for user oracle.
New password:
Retype new password:
passwd: all authentication tokens updated successfully.-- 检查创建的oracle用户
[root@db-oracle ~]# su - oracle
[oracle@db-oracle ~]$ id
uid=6001(oracle) gid=5001(oinstall) groups=5001(oinstall),5002(dba),5003(oper)
[oracle@db-oracle ~]$

 ⛳ 3.3 创建安装目录

-- 建oracle安装目录
[root@db-oracle ~]# mkdir -p /u01/app/oracle-- 更改/u01目录用户组
[root@db-oracle ~]# chown -R oracle:oinstall /u01-- 更改oracle目录权限
[root@db-oracle ~]# chmod -R 775 /u01/app/oracle

⛳ 3.4 设置oracle用户环境变量

-- 切换至oracle用户,编辑 .bash_profile 文件
[oracle@db-oracle ~]$ vi .bash_profile####添加内容
# use for oracleunset   TNS_ADMIN
export  ORACLE_BASE=/u01/app/oracle
export  ORACLE_HOME=$ORACLE_BASE/product/11.2.0/dbhome_1export  ORACLE_SID=orclexport  PATH=$PATH:$HOME/bin:$ORACLE_HOME/binexport  LD_LIBRARY_PATH=$ORACLE_HOME/lib:/usr/lib
#防止Oracle安装界面乱码,先把语言环境改为英文
export LANG=en_USif [ $USER = "oracle" ];thenif [ $SHELL = "/bin/ksh" ];thenulimit -p 16384ulimit -n 65536elseulimit -u 16384 -n 65536fifi

-- 使配置文件生效:
[oracle@db-oracle ~]$ source .bash_profile-- 检查是否生效
[oracle@db-oracle ~]$ echo $ORACLE_BASE
/u01/app/oracle[oracle@db-oracle ~]$ echo $ORACLE_HOME
/u01/app/oracle/product/11.2.0/dbhome_1
[oracle@db-oracle ~]$[oracle@db-oracle ~]$ env | grep ORACLE_SID
ORACLE_SID=orcl
[oracle@db-oracle ~]$[oracle@db-oracle ~]$ echo $PATH
/usr/local/bin:/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/home/oracle/.local/bin:/home/oracle/bin:/home/oracle/.local/bin:/home/oracle/bin:/home/oracle/bin:/u01/app/oracle/product/11.2.0/dbhome_1/bin

 

⛳ 3.5 创建oracle安装文件所在目录

##1、创建oracle安装文件所在目录
[root@db-oracle ~]# mkdir -p /software/oracle
[root@db-oracle ~]# cd /software/oracle/

##2、上传oracle11g安装包 

##3、解压oracle11g安装包
[root@db-oracle oracle]# unzip linux.x64_11gR2_database_1of2.zip
[root@db-oracle oracle]# unzip linux.x64_11gR2_database_2of2.zip

 

##4、更改oracle安装文件所在目录的用户组
[root@db-oracle oracle]# chown -R oracle:oinstall database/ 

##5、更改oracle安装文件所在目录的操作权限
[root@db-oracle oracle]# chmod -R 755 database/ 

 

🔻 四、开始安装

在安装前先打开Xmanager - Passive工具,用来显示远程linux主机图形化界面。

切换至oracle用户 

1、windowsIp:Xmanager端口号,export 设置DISPLAY环境变量为安装xmanager的主机IP,注意:这块是0.0还是1.0,可在xmanage右上角查看
[root@db-oracle ~]# su - oracle
[oracle@db-oracle ~]$ export DISPLAY=192.168.181.1:0.0
[oracle@db-oracle ~]$ echo $DISPLAY
192.168.181.1:0.0

 

 

2、进入oracle安装文件所在目录

[oracle@db-oracle ~]$ cd /software/oracle/database
[oracle@db-oracle database]$ ./runInstaller

⛳ 4.1 配置更新以及技术支持

⛳ 4.2 配置安装选项

①Create and configure a database     ----创建并配置一个新数据库,适用于新安装数据库的用户
②Install database software only          -----只安装数据库软件,适用于数据迁移
③Upgrade an existing database          ------升级已有数据库

 

⛳ 4.3 选择网格安装选项

①Single instance database installation                 ----单实例数据库安装(仅在本节点上安装单实例数据库软件)
②Real Application Clusters database installation  -----Oracle RAC数据库安装(可在在集群中的选定节点上选择和安装数据库软件)

 

⛳ 4.4 选择语言

 

⛳ 4.5 选择数据库版本–企业版

①Enterprise Edition        ----企业版(最强的版本,大部分功能需要付费)
②Standard Edition          -----标准版(包括了Standard Edition one 版本的功能和RAC)
③Standard Edition one   ------最基本的商业版(包括基本的数据库功能)

 

⛳ 4.6 指定安装位置

指定Oracle Base和Software Location存储位置。

⛳ 4.7 选择清单目录、指定清单组名称

①该目录统一记录安装的软件信息,记录了每一个Oracle软件主目录的名称和位置、安装的组件,以及一些其他的信息。
②Oracle的集群和数据库软件在进行升级时,通过读取中央目录中的信息来确认哪些软件应被安装的。删除或丢失oraInventory目录的内容,都有可能导致安装或升级报错。
③安装失败需要重新安装时,查看此目录,删除/u01/app/下的oraInventory目录,和/u01/app/oracle 下的product目录。

 

 

⛳ 4.8 选择管理员组和系统操作员组

 

⛳ 4.9 安装检查

忽略32位的这些包,把未安装的64位包手动安装,点击Check Again通过即可。

 这里手动安装了compat-libstdc++-33-3.2.3-72.el7.x86_64_3.rpmpdksh-5.2.14有关32位64位包。
命令:
[root@db-oracle rpm-pages]# rpm -ivh rpm包名 --force --nodeps

 

⛳ 4.10 开始安装

 

第一个报错:
Error in invoking target ‘install’ of makefile
‘/u01/app/oracle/product/11.2.0/dbhome_1/ctx/lib/ins_ctx.mk’. See ‘/u01/app/oraInventory/logs/installActions2023-06-13_08-00-29PM.log’ for details.

 

 

 

第一个报错解决:
INFO: //usr/lib64/libstdc++.so.5: undefined reference to `memcpy@GLIBC_2.14’
INFO: collect2: error: ld returned 1 exit status
INFO: make: *** [ctxhx] Error 1

 

 

 

-- 编辑 /u01/app/oracle/product/11.2.0/dbhome_1/ctx/lib/ins_ctx.mk 文件
[root@db-oracle ~]# vim /u01/app/oracle/product/11.2.0/dbhome_1/ctx/lib/ins_ctx.mk


修改
ctxhx: $(CTXHXOBJ)
$(LINK_CTXHX) $(CTXHXOBJ) $(INSO_LINK)


ctxhx: $(CTXHXOBJ)
-static $(LINK_CTXHX) $(CTXHXOBJ) $(INSO_LINK) /usr/lib64/libc.a

 

 

 

 

 

第二个报错:
Error in invoking target ‘agent nmhs’ of makefile
‘/u01/app/oracle/product/11.2.0/dbhome_1/sysman/lib/ins_emagent.mk’. See ‘/u01/app/oraInventory/logs/installActions2023-06-13_08-00-29PM.log’ for details.
 

 

 

 第二个报错解决:
###在makefile中添加链接libnnz11库的参数
[root@db-oracle ~]# vim /u01/app/oracle/product/11.2.0/dbhome_1/sysman/lib/ins_emagent.mk

 


$(MK_EMAGENT_NMECTL)
修改为
$(MK_EMAGENT_NMECTL) -lnnz11 

 

 

 

 

⛳ 4.11 随后会出现执行配置脚本提示窗口

打开一个终端窗口并切换到 root 用户,按照执行配置脚本窗口提示的路径执行脚本

 

 

[root@db-oracle ~]# bash /u01/app/oraInventory/orainstRoot.sh
[root@db-oracle ~]# bash /u01/app/oracle/product/11.2.0/dbhome_1/root.sh

 

 

 

 

⛳ 4.12 安装完成

 

🔻 五、监听配置

⛳ 5.1 netca命令配置监听

-- 切换至oracle用户
[root@db-oracle ~]$ su - oracle
-- 执行监听配置命令
[oracle@db-oracle ~]$ netca

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 ⛳ 5.2 监听有关命令

-- 监听状态查看
[oracle@db-oracle ~]$ lsnrctl status

 

-- 监听停止
[oracle@db-oracle ~]$ lsnrctl stop

-- 监听开启
[oracle@db-oracle ~]$ lsnrctl start 

 

🔻 六、dbca建库

⛳ 6.1 dbca命令建库

-- 切换至oracle用户
[root@db-oracle ~]$ su - oracle
-- dbca命令建库
[oracle@db-oracle ~]$ dbca

 

 

 

 

 

 

 

 

 注意区分:全局数据库名称上挂载实例,如果集群上会有多个实例,而全局数据库名只有1个

 

 

 

 

 --(Zyl@0411-这里建议不要设置密码带@符号---否则后面建库到45%左右会报ORA-12532:TNS:无效参数)--

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

🔻 七、数据库简单使用

⛳ 7.1 连接数据库

-- 切换oracle用户
[root@db-oracle ~]# su - oracle 
Last login: Tue Jun 13 23:27:36 CST 2023 on pts/3
-- 启动客户端进程
[oracle@db-oracle ~]$ sqlplus /nolog SQL*Plus: Release 11.2.0.1.0 Production on Tue Jun 13 23:28:43 2023Copyright (c) 1982, 2009, Oracle.  All rights reserved.
-- 以管理员登录
SQL> conn / as sysdba
SQL> show user;
USER is "SYS"
SQL> 

⛳ 7.2 启动或关闭数据库

-- 启动数据库startup;或者startup open;
SQL> startup open; 
ORA-01081: cannot start already-running ORACLE - shut it down first-- 关闭数据库
SQL> shutdown immediate;
Database closed.
Database dismounted.
ORACLE instance shut down.SQL> startup open;  
ORACLE instance started.Total System Global Area 1586708480 bytes
Fixed Size		    2213736 bytes
Variable Size		  922749080 bytes
Database Buffers	  654311424 bytes
Redo Buffers		    7434240 bytes
Database mounted.
Database opened.
SQL> 

⛳ 7.3 查看监听状态

-- 监听状态查看
[oracle@db-oracle ~]$ lsnrctl status-- 启动监听
[oracle@db-oracle ~]$ lsnrctl start-- 关闭监听
[oracle@db-oracle ~]$ lsnrctl stop

⛳ 7.4 查看数据库版本

-- 查看数据库版本
SQL> select * from v$version;BANNER
--------------------------------------------------------------------------------
Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - 64bit Production
PL/SQL Release 11.2.0.1.0 - Production
CORE	11.2.0.1.0	Production
TNS for Linux: Version 11.2.0.1.0 - Production
NLSRTL Version 11.2.0.1.0 - ProductionSQL> 

⛳ 7.5 查看数据状态

SQL> select status from v$instance; STATUS
------------
OPENSQL> 

⛳ 7.6 查看所有数据库

SQL> select name as database from v$database;DATABASE
---------
ORCLSQL> 

⛳ 7.7 创建oracle数据库用户

-- 命令:
create user  用户名 identified by 密码;SQL> create user zyl identified by Zyl#0411;User created.-- 赋权---dba权限,命令grant 权限 to 用户名;
SQL> grant dba to zyl;         Grant succeeded.SQL> 

⛳ 7.8 查看所有用户

-- 检索用户信息。可检索系统用户(SystemUser)、外部用户(ExternalUser)、和内部用户(CommonUser)的所有信息。
SQL> select * from dba_users;-- 可以通过该功能来获取全部数据库用户的信息,查出被授权的所有Oracle用户的角色,账户名等信息。
SQL> select * from all_users;-- 描述当前用户下所有用户信息的视图
SQL> select * from user_users;

⛳ 7.9 查看用户、角色的权限(直接赋值给用户或角色的权限)

SQL> select * from dba_sys_privs;

⛳ 7.10 当前用户所拥有的系统权限

SQL> select * from user_sys_privs;

⛳ 7.11 查看角色权限((只能查看登陆用户拥有的角色权限)

sql> select * from role_sys_privs;

⛳ 7.12 查看所有角色

sql> select * from dba_roles;

⛳ 7.13 查看用户对象权限

sql> select * from user_tab_privs;
sql> select * from dba_tab_privs;
sql> select * from all_tab_privs;

⛳ 7.14 查看哪些用户有DBA权限

SQL> select * from dba_role_privs where granted_role='DBA';GRANTEE 		       GRANTED_ROLE		      ADM DEF
------------------------------ ------------------------------ --- ---
SYS			       DBA			      YES YES
SYSTEM			       DBA			      YES YES
ZYL			       DBA			      NO  YESSQL> 

⛳ 7.15 授权

GRANT:赋予一个用户,一个组或所有用户访问权限
GRANT 语法:
GRANT privilege [, ...] ON object [, ...] TO { PUBLIC | GROUP group | username }-- 如:
SQL> grant select, insert, update, delete on dbtest.tab1 to zyl;

⛳ 7.16 回收权限

SQL> revoke select, insert, update, delete on dbtest.tab1 from zyl;

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/36013.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【毛毛虫案例-重力 Objective-C语言】

一、接下来,我们给这个毛毛虫,添加一下重力 1.把我们之前的代码,复制粘贴一份儿,改个名字,叫做:17-毛毛虫案例-重力, 重力的话,实际上,就比较简单了啊,那我们重力的话,去添加的时候,我也要在外面,去添加, 重力的话,叫做啥,UIGravityBehavior,啊, UIGravity…

Thinkphp/Laravel高校竞赛管理系统的设计与实现_9pi7u

高校竞赛管理,其工作流程繁杂、多样、管理复杂与设备维护繁琐。而计算机已完全能够胜任高校竞赛管理工作,而且更加准确、方便、快捷、高效、清晰、透明,它完全可以克服以上所述的不足之处。这将给查询信息和管理带来很大的方便,从…

时序约束(一):时钟的约束

目录 一、时钟约束的目的 二、约束工程项目 三、主时钟和生成时钟 四、主时钟约束 五、生成钟约束 一、时钟约束的目的 之前的文章对时序分析的基本原理做了介绍,我们会发现时序分析离不开时钟信号。对于时序分析工具来说同样如此,分析工具需要我…

【漏洞复现】用友GRP-U8——SQL注入

声明:本文档或演示材料仅供教育和教学目的使用,任何个人或组织使用本文档中的信息进行非法活动,均与本文档的作者或发布者无关。 文章目录 漏洞描述漏洞复现测试工具 漏洞描述 用友GRP-U8是一款企业管理软件,其系统dialog_moreUs…

财务RPA案例研究——分析成功的财务RPA实施案例

现代社会正加速向数字时代转型,数字技术以崭新的模式全面融入各行业领域。为顺应新一轮科技革命和产业变革趋势,越来越多的企业不断深化应用大数据、云计算、人工智能等新一代信息技术,积极迎接数字化转型,而RPA技术由于能够以自动…

常用组件详解(二):torch.nn.Flatten、torch.flatten()

文章目录 torch.nn.Flattentorch.flatten() 官方API文档:点击跳转。torch.nn.Flatten是Pytorch提供的类,常用于将输入数据进行展平,而torch.flatten()函数与之功能相同。 torch.nn.Flatten 类初始化方式: torch.nn.Flatten(star…

算法基础详解

大O记法 为了统一描述,大O不关注算法所用的时间,只关注其所用的步数。 比如数组不论多大,读取都只需1步。用大O记法来表示,就是:O(1)很多人将其读作“大O1”,也有些人读成“1数量级”。一般读成“O1”。虽…

友力科技广州数据中心搬迁

搬迁工作内容 1.搬迁技术工作 1)确定机房搬迁的负责人以及负责人的联系方式,保证在搬迁的过程中统一指挥管理。 2)确定服务器的数量,服务器的型号,服务器的配置等,如有需要,联系相关服务器的供货商或者厂家提供技术支持…

【极速入门版】编程小白也能轻松上手Comate AI编程插件

文章目录 概念使用错误检测与修复能力API生成代码生成json格式做开发测试 在目前的百模大战中,AI编程助手是程序员必不可少的东西,市面上琳琅满目的产品有没有好用一点的,方便一点的呢?今天工程师令狐向大家介绍一款极易入门的国产…

mysql中in参数过多优化

优化方式概述 未优化前 SELECT * FROM rb_product rb where sku in(1022044,1009786)方案2示例 public static void main(String[] args) {//往list里面设置3000个值List<String> list new ArrayList<>();for (int i 0; i < 3000; i) {list.add(""…

python-docx 获取页面大小、设置页面大小(纸张大小)

本文目录 前言一、docx纸张大小介绍1、document.xml① 关于 document.xml 的一些知识点② 纸张大小在哪里③ 纸张大小都有啥④ EMU对应的尺寸列表二、获取docx纸张大小1、完整代码2、运行效果图三、python为docx设置纸张大小1、完整代码2、效果图前言 今天的这边文章,我们来说…

项目实训-vue(八)

项目实训-vue&#xff08;八&#xff09; 文章目录 项目实训-vue&#xff08;八&#xff09;1.概述2.医院动态图像轮播3.页面背景板4.总结 1.概述 除了系统首页的轮播图展示之外&#xff0c;还需要在医院的首页展示医院动态部分的信息&#xff0c;展示医院动态是为了确保患者、…

【PHP】控制摄像头缩放监控画面大小,并保存可视画面为图片

一、前言 功能描述 调用摄像头并可以控制缩放摄像头监控画面的大小&#xff0c;把可视画面保存为图片。 我使用的是USB摄像头&#xff0c;其他摄像头此方法应该也通用。 使用技术 使用到的技术比较简单&#xff0c;前端使用WebcamJS插件调用摄像头&#xff0c;并摄像头监控…

《mysql》--mysql约束

数据库约束 有的时候数据库中的数据是有一定要求的&#xff0c;有些数据认为是合法数据&#xff0c;有些是非法数据&#xff0c;如果靠人工检查显然是不靠谱的&#xff1b; 数据库会自动的对数据的合法性进行校验检查目的就是&#xff0c;保证数据中能够避免被插入/修改一些非…

Linux基础 - 使用 ssh 服务管理远程主机(window linux vscode)

目录 零. 简介 一. 打开linux shh 二. window连接linux 三. linux连接linux 四. VSCode远程 零. 简介 SSH&#xff08;Secure Shell&#xff09;服务是一种网络协议&#xff0c;主要用于在不安全的网络环境中为计算机之间的通信提供安全的加密连接。 SSH 服务具有以下重要…

二、安装虚拟机

本篇来源&#xff1a;山海同行 本篇地址&#xff1a;https://shanhaigo.cn/courseDetail/1805875642621952000 本篇资源&#xff1a;以整理到-山海同行 一、官网下载centos7 1. 进入CentOS 官方网站 官方网站&#xff1a;https://www.centos.org/download/ 2. 选择iso 点击下…

高中数学:不等式-常用不等式知识点汇总

一、基本性质 比较大小的常用两种方法&#xff1a;作差法&#xff0c;作商法 等式性质 不等式性质 二、基本(均值)不等式 扩展 三、二次函数与一元二次方程不等式 定义 解的对应关系 一元二次不等式的求解过程 四、二元一次不等式(组)与线性规划 关键在于求多个不等…

无线领夹麦克风怎么挑选,能让声音变好听的领夹麦推荐大全

近年来&#xff0c;随着直播销售和个人视频日志&#xff08;Vlog&#xff09;的流行&#xff0c;自媒体内容创作已经成为一种文化现象。这一现象不仅改变了人们获取信息的方式&#xff0c;也极大地推动了相关音频设备的发展。无线领夹麦克风&#xff0c;以其轻巧的设计和出色的…

MySQL数据库基础练习系列:科研项目管理系统

DDL CREATE TABLE Users (user_id INT AUTO_INCREMENT PRIMARY KEY COMMENT 用户ID,username VARCHAR(50) NOT NULL UNIQUE COMMENT 用户名,password VARCHAR(255) NOT NULL COMMENT 密码,gender ENUM(男, 女) NOT NULL COMMENT 性别,email VARCHAR(100) UNIQUE COMMENT 邮箱 …

字节码编程ASM之idea插件asm bytecode outline的使用

写在前面 直接用ASM来编写字节码程序难度其实还是蛮大的&#xff0c;为此&#xff0c;就有热心人事开发了相关的idea插件 &#xff0c;其中比较优秀的一个是asm bytecode outline,本文就来一起看下如何使用。 1&#xff1a;安装 file->setting->plugins,搜索asm bytec…