【Red Hat 4.6---詳細安裝Oracle 19c】---靜默方式安裝

🔻 一、安裝前規劃

規劃項:(本環境) 描述:
操作系統版本Red Hat Enterprise Linux Server release 4.6 (Santiago)
主機名langtest
數據庫版本

Oracle 19c

IP規劃10.10.10.164
服務器空間要求根據實際要求
數據庫名/實例名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 內核版本、系統版本查看

拓展:普通用戶切換到root用戶

出現這種原因是因為在 /etc/sudoers 文件中沒有配置

1、使用root用戶登錄

2、編輯 /etc/sudoers 文件

-- root用戶登錄,編輯 /etc/sudoers 文件
[root@langtest ~]# vi /etc/sudoers-- 末行加入
-- NOPASSWD:ALL 表示切換到時候不需要輸入密碼
oracle ALL=(ALL) NOPASSWD:ALL-- 然后 :wq! 保存退出

?3、查看修改結果

?-- 系統的硬件架構
[oracle@langtest ~]$ uname -m
x86_64
[oracle@langtest ~]$ -- 查看內核版本
[oracle@langtest ~]$ cat /proc/version
Linux version 2.6.32-504.el6.x86_64 (mockbuild@x86-023.build.eng.bos.redhat.com) (gcc version 4.4.7 20120313 (Red Hat 4.4.7-11) (GCC) ) #1 SMP Tue Sep 16 01:56:35 EDT 2014
[oracle@langtest ~]$ --?所有可用的系統信息
[oracle@langtest ~]$ uname -a
Linux langtest 2.6.32-504.el6.x86_64 #1 SMP Tue Sep 16 01:56:35 EDT 2014 x86_64 x86_64 x86_64 GNU/Linux
[oracle@langtest ~]$ -- 查看系統版本
[oracle@langtest ~]$  cat /etc/redhat-release 
Red Hat Enterprise Linux Server release 4.6 (Santiago)
[oracle@langtest ~]$ 

? 2.2 修改主機名-重啟生效??

1、域名主機名映射?

-- 域名--主機名 映射
[oracle@langtest ~]$ vi /etc/hosts-- 末行增加
10.10.10.164   langtest

2、主機名?

-- 修改主機名
[oracle@langtest ~]$ vi /etc/hostname-- 增加
langtest

?? 2.3 關閉selinux

關閉selinux可以提高系統的性能,因為 selinux會對系統進行安全檢查,這會消耗一定的系統資源。

[oracle@langtest ~]$ vi /etc/selinux/config


-- 將SELINUX= enforcing?修改為SELINUX=disabled?

拓展:防火墻有關命令

-- 關閉防火墻
[oracle@langtest ~]$ systemctl stop firewalld-- 開啟防火墻
[oracle@langtest ~]$ systemctl start firewalld-- 重啟防火墻
[oracle@langtest ~]$ systemctl restart firewalld-- 防火墻狀態查看
[oracle@langtest ~]$ systemctl status firewalld-- 禁止開機啟動
[oracle@langtest ~]$ systemctl disable firewalld-- 設置開機啟動
[oracle@langtest ~]$ systemctl enable firewalld

?

? 2.4 防火墻設置1521端口開放?

-- 設置1521端口開放
[oracle@langtest ~]$ firewall-cmd --zone=public --add-port=1521/tcp --permanent
success
[oracle@langtest ~]$ -- 重啟防火墻,查看開放端口列表
[oracle@langtest ~]$ firewall-cmd --list-ports
1521/tcp
[oracle@langtest ~]$ 

? 2.5 系統相關配置檢查?

-- 查看磁盤占用的空間
[root@langtest ~]# df -h
-- 查看內存總量
[root@langtest ~]# grep MemTotal /proc/meminfo
-- 查看空閑內存量
[root@langtest ~]# grep MemFree /proc/meminfo

?

?安裝oracle 11g對于共享內存(/dev/shm)要求/dev/shm空間不能小于分配給oracle使用內存的大小

?

我這里大小已經夠用了,就不需要增加了 !!!!!!!!!

?

拓展:修改/dev/shm 大小 (/dev/shm空間不能小于分配給oracle使用內存的大小)

將/dev/shm 增加到4G

[root@langtest ~]# vi /etc/fstab-- 文本末添加內容
tmpfs	/dev/shm	tmpfs   defaults size=4096M	  0 0
-- 重新掛載/dev/shm,然后df -h /dev/shm查看掛載情況
[root@langtest ~]# mount -o remount /dev/shm
2.5.1?🍁 /tmp(臨時文件存儲空間) >1G

?

2.5.2?🍁 /u01(軟件安裝目錄) >2.5G?

?

2.5.3 🍁 內核需求?

安裝數據庫19c操作系統內核需求
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 62.6.32-100.28.5.el6.x86_64 or later
On Oracle Linux 6

2.6.32-71.el6.x86_64 or later (with Red Hat Compatible Kernel)??

Oracle 19c要求OS至少為RHEL4.7,內核為Kernel 2.6.9

? 2.6 系統光盤鏡像文件掛載—配置本地yum源

一般生產環境無法訪問外網,在內網環境可以使用系統ISO鏡像文件作為本地yum源,在服務器上掛載DVD的 iso 文件。

2.6.1 🍁 上傳iso鏡像文件并掛載到 /mnt/dvd/ 下

1、創建掛載鏡像文件目錄?

-- 創建鏡像文件掛載目錄/mnt/dvd
[root@langtest ~]# mkdir -p /mnt/dvd-- 查看創建情況
[root@langtest ~]# ls -lrt /mnt/dvd
total 0
[root@langtest ~]# 

2、上傳rhel-server-7.9-x86_64-dvd.iso文件到?/usr/local/src

通過 sftp 將鏡像上傳到 /usr/local/src? 下

?

?

3、掛載ISO文件

-- 掛載iso文件(只能讀,不可寫)
[root@langtest ~]# mount -t iso9660 -o loop /usr/local/src/rhel-server-7.9-x86_64-dvd.iso /mnt/dvd-- 重新以可讀可寫的方式掛載
[root@langtest ~]# mount -o remount,rw /

?

?

4、開機自動掛載本地鏡像文件

?

-- 設置開機自動掛載本地鏡像文件
[root@langtest ~]# vi /etc/fstab-- 末行添加內容
/usr/local/src/rhel-server-7.9-x86_64-dvd.iso    /mnt/dvd    iso9660   loop    0    0

?

5、查看掛載情況

[root@langtest ~]# df -h
Filesystem            Size  Used Avail Use% Mounted on
/dev/mapper/vg_root-lv_root99G   38G   57G  40% /
tmpfs                 2.0T   28K  2.0T   1% /dev/shm
/dev/sda1             190M   33M  147M  19% /boot
/dev/mapper/vg_root-lv_oracle99G   56G   39G  59% /u01
/dev/mapper/vg_root-lv_backup99G   69G   26G  74% /backup
/dev/mapper/vg_root-lv_onlbak99G  2.4G   91G   3% /onlbak
/dev/mapper/vg_root-lv_test99G   41G   54G  43% /oracle
/dev/mapper/vg_faredata-lv_faredata776G  553G  184G  76% /fare_data
/dev/mapper/vg_rptbak-lv_rptbak739G  343G  358G  49% /rptbak
/dev/mapper/vg_oradata-lv_oradata792G  717G   35G  96% /oradata
/dev/mapper/vg_oradata02-lv_oradata02970G  131G  790G  15% /oradata02
/dev/mapper/vg_amrbak-lv_amrbak650G  3.6G  613G   1% /amrbak
/dev/mapper/vg_postgres-lv_postgres99G  403M   93G   1% /postgres
/usr/local/src/rhel-server-7.9-x86_64-dvd.iso4.3G  4.3G     0 100% /mnt/dvd
[root@langtest ~]# 

?

?2.6.2 🍁 備份yum源文件
[root@langtest ~]# cd /etc/yum.repos.d/
[root@langtest ~]# more redhat.repo

?

-- 備份yum源文件
[root@langtest yum.repos.d]# cp redhat.repo redhat.repo-bak

?

?2.6.3🍁 本地yum源配置

1、編輯?/etc/yum.repos.d/redhat.repo 文件?

[root@langtest yum.repos.d]#  cd /etc/yum.repos.d/
[root@langtest yum.repos.d]# ls
cobbler-config.repo  local.repo  redhat.repo  redhat.repo-bak  rhel-source.repo.bak
[root@langtest yum.repos.d]# vi redhat.repo

?

?

?

?2、增加如下內容

[root@langtest 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源配置

1、清除yum緩存

###清除yum緩存
[root@langtest ~]# yum clean all

?

2、緩存本地yum源中的軟件包信息?

-- 緩存本地yum源中的軟件包信息
[root@langtest ~]# yum makecache

?

3、查詢倉庫中的所有軟件包?

-- 查詢倉庫中的所有軟件包
[root@langtest ~]# yum list

? 2.7 Orange19c有關依賴包檢查及安裝?

1、檢查19c相關的依賴包

-- Orange19c有關依賴包檢查
rpm -q  binutils \
compat-libcap1 \
compat-libstdc++-33 \
gcc \
gcc-c++ \
glibc \
glibc-devel \
ksh \
libaio \
libaio-devel \
libgcc \
libstdc++ \
libstdc++-devel \
libXi \
libXtst \
make  \
sysstat \
unixODBC \
unixODBC-devel \ | grep "not installed"

----提前安裝有關依賴?

1、安裝有關依賴

-- 安裝有關依賴
[root@langtest ~]# 
yum install gcc* binutils* compat* glibc* ksh* libgcc* libstdc* libaio* make* sysstat* unixODBC* -y

?

拓展:?

--?手動上傳安裝compat-libstdc++

[root@langtest ~]# 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@langtest ~]# 

2、有關依賴包再次檢查?

-- 有關依賴包再次檢查
rpm -q  binutils \
compat-libcap1 \
compat-libstdc++-33 \
gcc \
gcc-c++ \
glibc \
glibc-devel \
ksh \
libaio \
libaio-devel \
libgcc \
libstdc++ \
libstdc++-devel \
libXi \
libXtst \
make  \
sysstat \
unixODBC \
unixODBC-devel \ | grep "not installed"

? 2.8 修改資源限制參數并使其生效?

對oracle用戶做資源的限制,主要是出于性能上的考慮,防止oracle用戶過渡消耗有限資源,使系統變得臃腫緩慢。

?1、編輯?/etc/security/limits.conf 文件

?

-- 備份limits.conf 文件,limits.conf只針對于單個會話。
[root@langtest ~]# cd  /etc/security/
[root@langtest security]# ls
access.conf  console.apps      console.perms    group.conf   limits.d        namespace.d     opasswd       pam_winbind.conf  time.conf
chroot.conf  console.handlers  console.perms.d  limits.conf  namespace.conf  namespace.init  pam_env.conf  sepermit.conf
[root@langtest security]# cp /etc/security/limits.conf /etc/security/limits.conf-bak
[root@langtest security]# vi /etc/security/limits.conf-- 末行添加
# Oracle
oracle              soft    nproc   2047
oracle              hard    nproc   16384
oracle              soft    nofile  65536
oracle              hard    nofile  65536
oracle              soft    stack   10240
oracle              soft  memlock  unlimited
oracle              hard  memlock  unlimited

?

注意:資源限制參數分為軟限制和硬限制
nproc? ? ? ?----進程最大數目
nofile? ? ? ?----進程打開文件的最大數目
stack? ? ? ?----最大棧大小
memlock ----最大鎖定內存地址空間(要比實際內存小,如內存4G,設置3G最大鎖定內存地址空間,則為3x1024x1024=3145728)
?
--------其他配置項-------
core? ? ? ? ? ? ?----限制內核文件的大小
data? ? ? ? ? ? ?----最大數據大小
fsize? ? ? ? ? ? ?----最大文件大小
rss? ? ? ? ? ? ? ? ---- 最大持久設置大小
cpu? ? ? ? ? ? ? ?---- 以分鐘為單位的最多 CPU 時間
as? ? ? ? ? ? ? ? ?---- 地址空間限制
maxlogins? ? ?---- 此用戶允許登錄的最大數目?

?

2、使 limits.conf 文件配置生效?

-- 使 limits.conf 文件配置生效,必須要確保 pam_limits.so 文件被加入到啟動文件中。vi /etc/pam.d/login 文件,文末添加內容:[root@langtest ~]#  vi /etc/pam.d/login-- 末行增加
session  required  /lib64/security/pam_limits.so

?

?? 2.9 系統內核參數修改

1、備份、編輯內核參數文件sysctl.conf

[root@langtest ~]# cp /etc/sysctl.conf /etc/sysctl.conf-bak
[root@langtest ~]# vi /etc/sysctl.conf-- 末行增加
fs.aio-max-nr = 1048576
fs.file-max = 6815744
kernel.shmall = 65892823
kernel.shmmax = 215917602406
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 = 1048586

?

系統內核參數詳解,關注該四個:

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—頁數查看
[oracle@langtest ~]$ getconf PAGESIZE
4096
[oracle@langtest ~]$ 
3、kernel.shmmni    -----共享內存段的最大數量 = 4096(和每頁大小一致即可)4、vm.nr_hugepages? -----大頁,直接分配并保留對應大小的內存區域(SGA/2M稍微大一點,加200M左右),如(0.8x3.2Gx1024x1024x1024)/(1024x1024)

?

?

2、使內核參數文件sysctl.conf生效?

-- 使內核參數文件sysctl.conf生效,重新加載配置文件
[oracle@langtest ~]$ sysctl -p
fs.aio-max-nr = 1048576
fs.file-max = 6815744
kernel.shmall = 65892823
kernel.shmmax = 215917602406
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 = 1048586
[oracle@langtest ~]$ 

?

? 2.10 用戶創建進程數的限制

nproc是操作系統級別對每個用戶創建進程數的限制.

?

-- 設置每個用戶創建進程最大數為1024
[root@langtest ~]# echo "* soft nproc 1024 " > /etc/security/limits.d/90-nproc.conf
[root@langtest ~]# cat /etc/security/limits.d/90-nproc.conf
* soft nproc 1024
[root@langtest ~]#

?

?

拓展:?

1、查看所有用戶創建的進程數,使用命令:

[root@langtest ~]# ps h -Led -o user | sort | uniq -c | sort -n1 ntp2 postfix7 zabbix12 postgres28 mysql412 oracle4216 root
[root@langtest ~]# 

?

2、查看某個用戶創建的進程數,使用命令: (進程太多,只取了一部分

[root@langtest ~]# ps -o nlwp,pid,lwp,args -u root | sort -n1    547    547 [migration/136]1    548    548 [stopper/136]1    549    549 [ksoftirqd/136]1    550    550 [watchdog/136]1   5509   5509 [edac-poller]1    551    551 [migration/137]1    552    552 [stopper/137]1    553    553 [ksoftirqd/137]1    554    554 [watchdog/137]1    555    555 [migration/138]1     55     55 [migration/13]1    556    556 [stopper/138]1    557    557 [ksoftirqd/138]1    558    558 [watchdog/138]1    559    559 [migration/139]1      5      5 [stopper/0]1    560    560 [stopper/139]1    561    561 [ksoftirqd/139]1    562    562 [watchdog/139]1    563    563 [migration/140]1    564    564 [stopper/140]1    565    565 [ksoftirqd/140]1     56     56 [stopper/13]1    566    566 [watchdog/140]1    567    567 [migration/141]1    568    568 [stopper/141]1    569    569 [ksoftirqd/141]1    570    570 [watchdog/141]1    571    571 [migration/142]
[root@langtest ~]# 

🔻 三、安裝前準備二(創建用戶、用戶組以及安裝目錄)

注:在安裝任何軟件設置的用戶和用戶密碼都要做好記錄

?? 3.1 創建用戶組

-- 創建oinstall用戶組—控制軟件安裝,補丁安裝
[oracle@langtest ~]$ /usr/sbin/groupadd -g 600 dba-- 創建dba用戶組—控制數據庫創建、管理
[oracle@langtest ~]$ /usr/sbin/groupadd -g 601 oinstall-- 創建oper用戶組—數據庫操作員
[oracle@langtest ~]$ /usr/sbin/groupadd -g 603 oper
[oracle@langtest ~]$

拓展:

-- 刪除用戶組
[oracle@langtest ~]$ groupadd test
[oracle@langtest ~]$ useradd -g test -G dba test
[oracle@langtest ~]$ groupdel test
groupdel: cannot remove the primary group of user ‘test’
[oracle@langtest ~]$-- 如果組里面有用戶需要先刪除用戶或移動用戶,才能刪除組
[oracle@langtest ~]$ userdel test ###刪除用戶

? 3.2 創建oracle用戶和設置密碼?

-- 創建oracle用戶—編號為600,默認組為dba ,并添加到oinstall組,主要是dba組發生作用
[oracle@langtest ~]$ useradd -u 600 -g dba -G oinstall oracle

-- passwd oracle?----設置oracle用戶密碼(Or@cle2024)

[oracle@langtest ~]$ passwd oracle
Changing password for user oracle.
New password:
Retype new password:
passwd: all authentication tokens updated successfully.
[oracle@langtest ~]$

-- 檢查創建的oracle用戶

[oracle@langtest ~]$ id
uid=600(oracle) gid=600(dba) groups=600(dba),601(oinstall)
[oracle@langtest ~]$ 

? 3.3 創建安裝目錄?

-- 創建oracle安裝目錄
[oracle@langtest ~]$ mkdir -p /u01/app/oracle-- 更改/u01目錄用戶組
[oracle@langtest ~]$ chown -R oracle:dba /u01-- 更改oracle目錄權限
[oracle@langtest ~]$ chmod -R 775 /u01/app/oracle

? 3.4 設置oracle用戶環境變量?

-- 切換至oracle用戶,編輯 profile19c 文件
[oracle@langtest ~]$ vi profile19c-- 增加如下內容# Get the aliases and functions
if [ -f ~/.bashrc ]; then. ~/.bashrc
fi# User specific environment and startup programsPATH=$PATH:$HOME/.local/bin:$HOME/binexport PATH
export ORACLE_SID=orcl
export ORACLE_BASE=/u01/app/oracle
export ORACLE_HOME=$ORACLE_BASE/product/19.3/db_1
export TNS_ADMIN=$ORACLE_HOME/network/admin
export LD_LIBRARY_PATH=$ORACLE_HOME/lib
export PATH=$ORACLE_HOME/bin:/bin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/X11R6/bin
export TEMP=/tmp
export TMP=/tmp
export LC_ALL=en_US.UTF-8
export LANG=en_US.UTF-8
export NLS_LANG=AMERICAN_AMERICA.AL32UTF8
umask 022
stty erase ^H

?

?使配置文件生效:

-- 使環境變量生效
[oracle@langtest ~]$ source profile19c-- 安裝目錄
[oracle@langtest ~]$ echo $ORACLE_BASE
/u01/app/oracle-- 家目錄
[oracle@langtest ~]$ echo $ORACLE_HOME
/u01/app/oracle/product/19.3/db_1-- 環境路徑
[oracle@langtest ~]$ echo $PATH
/u01/app/oracle/product/19.3/db_1/bin:/bin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/X11R6/bin-- 實例名
[oracle@langtest ~]$ env | grep ORACLE_SID
ORACLE_SID=orcl
[oracle@langtest ~]$ 

? 3.5 創建oracle安裝文件所在目錄?

1、創建安裝文件目錄?

-- 創建安裝文件所在目錄
[root@langtest ~]# mkdir -p /u01/app/oracle/product/19.3/db_1
[root@langtest ~]# ls -lrt /u01/app/oracle/product/19.3/db_1
total 0
[root@langtest ~]# 

2、上傳oracle19c安裝包

將下載好的19c數據庫安裝包上傳到?/u01/app/oracle/product/19.3/db_1目錄下

1.官網下載


?

2.百度網盤提取oracle19c

?

?

?3、解壓oracle19c安裝包

[oracle@langtest ~]$ cd /u01/app/oracle/product/19.3/db_1
[oracle@langtest db_1]$ ls -lrt
total 2988000
-rw------- 1 oracle dba 3059705302 Jul  9 18:20 LINUX.X64_193000_db_home.zip
[oracle@langtest db_1]$ unzip LINUX.X64_193000_db_home.zip

?

?4、更改oracle安裝文件所在目錄的用戶組

[root@langtest ~]# chown -R oracle:dba /u01/app/oracle/product/19.3/db_1
[root@langtest ~]# 

?

?5、更改oracle安裝文件的操作權限

[oracle@langtest db_1]$ chmod +x runInstaller

🔻 四、安裝數據庫軟件、配置監聽、建庫

拓展:關于oracle的響應文件

db_install.rsp? ??----安裝響應文件
dbca.rsp? ? ? ? ? ----實例響應文件
netca. rsp? ? ? ??----監聽響應文件

? 4.1 編輯靜默安裝響應文件?

1、以oracle用戶進入安裝包解壓后的?/u01/app/oracle/product/19.3/db_1/install/response/? 目錄下

-- 進入到安裝響應文件目錄下
[oracle@langtest ~]$ cd /u01/app/oracle/product/19.3/db_1/install/response/
[oracle@langtest response]$ ls
db_install.rsp
[oracle@langtest response]$ 

2、備份安裝響應文件 (修改前養成備份的習慣)

-- 備份安裝響應文件
[oracle@langtest response]$ cp db_install.rsp db_install.rsp_bak
[oracle@langtest response]$ ls
db_install.rsp  db_install.rsp_bak
[oracle@langtest response]$ 

?

?3、編輯db_install.rsp文件

-- 編輯 安裝響應文件
[oracle@langtest response]$ vi db_install.rsp-- 修改如下內容
oracle.install.option=INSTALL_DB_SWONLY
UNIX_GROUP_NAME=dba
INVENTORY_LOCATION=/u01/app/oraInventory
ORACLE_HOME=/u01/app/oracle/product/19c/db_1
ORACLE_BASE=/u01/app/oracle
oracle.install.db.InstallEdition=EE
oracle.install.db.OSDBA_GROUP=dba
oracle.install.db.OSOPER_GROUP=dba
oracle.install.db.OSBACKUPDBA_GROUP=dba
oracle.install.db.OSDGDBA_GROUP=dba
oracle.install.db.OSKMDBA_GROUP=dba
oracle.install.db.OSRACDBA_GROUP=dba
oracle.install.db.rootconfig.executeRootScript=false

編輯完,:wq 保存?

拓展:關于oracle的安裝響應文件db_install.rsp參數詳解

🍀1、安裝類型:
oracle.install.option=INSTALL_DB_SWONLY
1、 INSTALL_DB_SWONLY? ?----僅安裝數據庫軟件
2、 INSTALL_DB_AND_CONFIG ----安裝和配置數據庫
?
🍀2、安裝組:
UNIX_GROUP_NAME=dba
?
🍀3、INVENTORY清單目錄:
INVENTORY_LOCATION=/u01/app/oraInventory
該目錄主要存儲數據庫的控制文件、數據文件、重做日志文件。
?
🍀4、oracle產品目錄:
ORACLE_HOME=/u01/app/oracle/product/19c/db_1
?
🍀5、oracle基目錄:
ORACLE_BASE=/u01/app/oracle
?
🍀6、安裝版本:
oracle.install.db.InstallEdition=EE
1、EE : Enterprise Edition ----企業版
2、SE2 : Standard Edition ----標準版2
?
🍀7、要授予SYSDBA權限的操作系統組:
oracle.install.db.OSDBA_GROUP=dba
?
🍀8、SYSOPER權限的操作系統組:
oracle.install.db.OPER_GROUP=dba


🍀9、SYSBACKUP權限的操作系統組

oracle.install.db.OSBACKUPDBA_GROUP=dba

🍀10、SYSDG權限的操作系統組

oracle.install.db.OSDGDBA_GROUP=dba

🍀11、SYSKM權限的操作系統組

oracle.install.db.OSKMDBA_GROUP=dba

🍀12、SYSRAC權限的操作系統組

oracle.install.db.OSRACDBA_GROUP=dba

??

🍀13、指定腳本執行模式:true:使用適當的配置方法自動執行根腳本。false:手動執行根腳本

oracle.install.db.rootconfig.executeRootScript=false

🍀14、自動執行腳本的配置方法 root 或者 sudo

oracle.install.db.rootconfig.configMethod=root

🍀15、sudo程序的絕對路徑

oracle.install.db.rootconfig.sudoPath=

??

🍀16、指定sudoers列表中的用戶的名稱。
#僅當選擇SUDO配置方法時適用。
#注意:對于單實例數據庫安裝,sudo用戶名必須是安裝數據庫的用戶的用戶名。

oracle.install.db.rootconfig.sudoUserName=

🍀17、群集節點名稱

oracle.install.db.CLUSTER_NODES=

———僅安裝數據庫軟件配置如上參數即可,如果選擇安裝和配置數據庫還需配置下面參數———

🍀18、創建的數據庫的類型

1.GENERAL_PURPOSE :為通用或事務繁重的應用程序設計的入門數據庫
2.DATA_WAREHOUSE :一個為數據倉庫應用程序優化的入門數據庫

oracle.install.db.config.starterdb.type=

🍀19、全局數據庫名稱

oracle.install.db.config.starterdb.globalDBName=

🍀20、數據庫實例名:

oracle.install.db.config.starterdb.SID=

🍀21、指定是否應將數據庫配置為容器數據庫。
1.true :是

2.false 或者空 :否

oracle.install.db.ConfigureAsContainerDB=

🍀22、在容器數據庫中指定可插入數據庫名稱

oracle.install.db.config.PDBName=

🍀23、數據庫字符集

oracle.install.db.config.starterdb.characterSet=AL32UTF8

🍀24、是否自動內存管理

1.true

2.false

oracle.install.db.config.starterdb.memoryOption=

🍀25、指定數據庫的總內存分配。值(MB)應為 ,至少256 MB,并且不應超過可用的物理內存總量

oracle.install.db.config.starterdb.memoryLimit=

🍀26、是否將示例架構加載到啟動器數據庫。

1.true

2.false

oracle.install.db.config.starterdb.installExampleSchemas=

🍀27、啟動數據庫通用密碼

oracle.install.db.config.starterdb.password.ALL=

🍀28、啟動器數據庫的SYS密碼

oracle.install.db.config.starterdb.password.SYS=

🍀29、啟動器數據庫的SYSTEM密碼

oracle.install.db.config.starterdb.password.SYSTEM=

🍀30、啟動器數據庫的DBSNMP密碼,僅適用于oracle.install.db.config.starterdb.managementOption=CLOUD_CONTROL

oracle.install.db.config.starterdb.password.DBSNMP=

🍀31、在容器數據庫中創建可插入數據庫所需的PDBADMIN密碼

oracle.install.db.config.starterdb.password.PDBADMIN=

🍀32、管理數據庫的管理方法

1.CLOUD_CONTROL:使用Enterprise Manager CLOUD CONTROL和database Express管理數據庫

2.DEFAULT:使用默認的database Express選項管理數據庫

oracle.install.db.config.starterdb.managementOption=

🍀33、連接到云服務主機IP,僅適用于oracle.install.db.config.starterdb.managementOption=CLOUD_CONTROL

oracle.install.db.config.starterdb.omsHost=

🍀34、連接到云服務主機端口,僅適用于oracle.install.db.config.starterdb.managementOption=CLOUD_CONTROL

oracle.install.db.config.starterdb.omsPort=

🍀35、連接到云服務主機用戶名,僅適用于oracle.install.db.config.starterdb.managementOption=CLOUD_CONTROL

oracle.install.db.config.starterdb.emAdminUser=

🍀36、連接到云服務主機密碼,僅適用于oracle.install.db.config.starterdb.managementOption=CLOUD_CONTROL

oracle.install.db.config.starterdb.emAdminPassword=

🍀37、是否需要數據庫恢復

1.true

2.false

oracle.install.db.config.starterdb.enableRecovery=

🍀38、數據庫存儲:

1、FILE_SYSTEM_STORAGE ----文件系統
2、ASM_STORAGE -----ASM存儲
oracle.install.db.config.starterdb.storageType=FILE_SYSTEM_STORAGE

🍀39、指定數據庫文件位置,該位置是數據文件的目錄,控件文件,重做日志。
#僅當
oracle.install.db.config.starterdb.storageType=FILE_SYSTEM_STORAGE時適用

oracle.install.db.config.starterdb.fileSystemStorage.dataLocation=

🍀40、指定恢復位置
#僅當
oracle.install.db.config.starterdb.storageType=FILE_SYSTEM_STORAGE時適用

oracle.install.db.config.starterdb.fileSystemStorage.recoveryLocation=

🍀41、指定要用于存儲的現有ASM磁盤組
#僅當
oracle.install.db.config.starterdb.storageType=ASM_STORAGE時適用

oracle.install.db.config.asm.diskGroup=

🍀42、ASM實例的ASMSNMP用戶的密碼

#僅當oracle.install.db.config.starterdb.storageType=ASM_STORAGE時適用

oracle.install.db.config.asm.ASMSNMPPassword=

?? 4.2 使用db_install.rsp響應文件開始安裝數據庫軟件

1、進入oracle解壓目錄?/u01/app/oracle/product/19.3/db_1

[oracle@langtest ~]$ cd /u01/app/oracle/product/19.3/db_1
[oracle@langtest db_1]$ ls -lrt
total 292
-rw-r--r--  1 oracle dba   852 Aug 18  2015 env.ora
-rw-r--r--  1 oracle dba  2927 Oct 14  2016 schagent.conf
-rwxr-x--x  1 oracle dba  1783 Mar  8  2017 runInstaller
drwxr-x--- 14 oracle dba  4096 Apr 12  2019 OPatch
drwxr-x---  7 oracle dba  4096 Apr 17  2019 xdk
drwxr-xr-x  3 oracle dba  4096 Apr 17  2019 wwg
drwxr-xr-x  4 oracle dba  4096 Apr 17  2019 usm
drwxr-xr-x  5 oracle dba  4096 Apr 17  2019 suptools
drwxr-xr-x  6 oracle dba  4096 Apr 17  2019 srvm
drwxr-xr-x  3 oracle dba  4096 Apr 17  2019 sqlj
drwxr-xr-x  4 oracle dba  4096 Apr 17  2019 sqldeveloper
drwxr-xr-x  3 oracle dba  4096 Apr 17  2019 slax
-rw-r-----  1 oracle dba    10 Apr 17  2019 root.sh.old.1
drwxr-xr-x  3 oracle dba  4096 Apr 17  2019 relnotes
drwxr-xr-x  4 oracle dba  4096 Apr 17  2019 racg
drwxr-xr-x  5 oracle dba  4096 Apr 17  2019 R
drwxr-xr-x  5 oracle dba  4096 Apr 17  2019 perl
drwxr-xr-x  4 oracle dba  4096 Apr 17  2019 owm
drwxr-xr-x  3 oracle dba  4096 Apr 17  2019 oss
drwxr-xr-x  6 oracle dba  4096 Apr 17  2019 ord
drwxr-xr-x  4 oracle dba  4096 Apr 17  2019 oracore
drwxr-xr-x  7 oracle dba  4096 Apr 17  2019 opmn
drwxr-xr-x  5 oracle dba  4096 Apr 17  2019 olap
drwxr-xr-x  5 oracle dba  4096 Apr 17  2019 nls
drwxr-xr-x  4 oracle dba  4096 Apr 17  2019 mgw

?

?2、執行安裝

[oracle@langtest oracle]$ ./runInstaller -silent -ignoreInternalDriverError -responseFile /u01/app/oracle/product/19.3/db_1/install/response/db_install.rsp-- 參數說明
-silent                     對于無提示模式下的操作, 輸入內容可以是一個響應文件, 也可以是命令行變量值對的列表。
-ignorePrereq               忽略運行先決條件檢查。
-ignoreSysPrereqs           忽略系統先決條件檢查的結果。
-showProgress               用于在控制臺上顯示安裝進度。僅在無提示安裝下才支持此選項。
-responseFile <Path>        指定要使用的響應文件和路徑。

說明:

? ? ? ? 1.如果安裝的時候報錯:/software/oracle/perl/bin/perl: /lib64/libc.so.6: version `GLIBC_2.14' not found (required by /software/oracle/perl/bin/perl)

可以參考:https://zhuanlan.zhihu.com/p/529548252?我按照這個步驟操作,再次安裝的時候不報這個錯誤了

? ? ? ? 2.安裝好GLIBC_2.14 后,ssh 登錄報如下錯誤

-- 登錄的時候報這個錯誤
-bash: warning: setlocale: LC_CTYPE: cannot change locale (en_US.UTF-8): No such file or directory
-bash: warning: setlocale: LC_COLLATE: cannot change locale (en_US.UTF-8): No such file or directory
-bash: warning: setlocale: LC_MESSAGES: cannot change locale (en_US.UTF-8): No such file or directory
-bash: warning: setlocale: LC_NUMERIC: cannot change locale (en_US.UTF-8): No such file or directory
-bash: warning: setlocale: LC_TIME: cannot change locale (en_US.UTF-8): No such file or directory
[oracle@langtest ~]$[oracle@langtest ~]$ locale
locale: Cannot set LC_CTYPE to default locale: No such file or directory
locale: Cannot set LC_MESSAGES to default locale: No such file or directory
locale: Cannot set LC_COLLATE to default locale: No such file or directory造成原因:升級libc后導致中文亂碼
解決方法:
1、如果這時你沒有刪除glibc的編譯目錄,則進入glibc的編譯目錄,也就是build目錄
[root@langtest build]#  make localedata/install-locales
上面命令執行結束,再次執行 locale 這時應該已經正常了
[root@langtest build]# locale2、如果你已經刪除了編譯glibc的build目錄或者不知道build的目錄在哪里
· 查看 libc.so.6 軟連接指向
[root@langtest ~]# ls -la /lib64/libc.so.6
[root@langtest ~]# /lib64/libc.so.6 -> libc-2.14.so· 查看 locale-archive 歸檔文件目錄
[root@langtest ~]# strings libc-2.14.so | grep locale-archive
[root@langtest ~]#  /usr/local/glibc-2.14/lib/locale/locale-archive
上面這個目錄是在升級libc的時候build的目錄· 添加軟鏈接
[root@langtest ~]#  ls -la /usr/local/glibc-2.14/lib/locale/locale-archive
發現文件并不存在
那么
[root@langtest ~]#  ln -s /usr/lib/locale/locale-archive /usr/local/glibc-2.14/lib/locale/locale-archive重新執行 locale 已經正常了 !
[root@langtest ~]#  locale

安裝過程:?

??

?—— 等待安裝即可,出現Successfully Setup Software.則代表成功——?

?

3、新建窗口,root用戶執行

[root@langtest ~]# /u01/app/oracle/product/19.3/db_1/root.sh
Check /u01/app/oracle/product/19.3/db_1/install/root_langtest_2024-07-10_09-01-18-037231095.log for the output of root script
[root@langtest ~]# 

??—— 至此安裝成功,接下來配置監聽——

? 4.3 oracle用戶登錄使用netca.rsp配置監聽 (這里建議先創建數據庫,然后再配置監聽

1、執行監聽響應文件netca.rsp配置監聽

[oracle@langtest netca]$ netca /silent /responseFile /u01/app/oracle/product/19.3/db_1/assistants/netca/netca.rsp Parsing command line arguments:Parameter "silent" = trueParameter "responsefile" = /u01/app/oracle/product/19.3/db_1/assistants/netca/netca.rsp
Done parsing command line arguments.
Oracle Net Services Configuration:
Profile configuration complete.
Listener started at port:1523
Oracle Net Listener Startup:Running Listener Control: /u01/db/bin/lsnrctl start LISTENERListener Control complete.Listener started successfully.
Listener configuration complete.
Default local naming configuration complete.
Oracle Net Services configuration successful. The exit code is 0[oracle@langtest netca]$ 

?

?監聽配置成功后,會在/u01/app/oracle/product/19.3/db_1/network/admin 中生成listener.ora和sqlnet.ora兩個文件。

2、編輯監聽文件 vi?listener.ora

[oracle@langtest admin]$ vi listener.oraLISTENER =(DESCRIPTION_LIST =(DESCRIPTION =(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))(ADDRESS = (PROTOCOL = TCP)(HOST = 10.10.10.164)(PORT = 1521))))
#配置靜態監聽
SID_LIST_LISTENER=(SID_LIST=(SID_DESC=(GLOBAL_DBNAME=orcl)(ORACLE_HOME=/u01/app/oracle/product/19.3/db_1)(SID_NAME=orcl)))ADR_BASE_LISTENER = /u01/app/oracle

🍁 4.3.1 監聽有關命令

?1、監聽狀態查看

?

[oracle@langtest admin]$ lsnrctl  statusLSNRCTL for Linux: Version 19.0.0.0.0 - Production on 10-JUL-2024 09:35:57Copyright (c) 1991, 2019, Oracle.  All rights reserved.Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC1521)))
STATUS of the LISTENER
------------------------
Alias                     LISTENER
Version                   TNSLSNR for Linux: Version 19.0.0.0.0 - Production
Start Date                10-JUL-2024 09:34:15
Uptime                    0 days 0 hr. 1 min. 41 sec
Trace Level               off
Security                  ON: Local OS Authentication
SNMP                      OFF
Listener Parameter File   /u01/app/oracle/product/19.3/db_1/network/admin/listener.ora
Listener Log File         /u01/app/oracle/diag/tnslsnr/langtest/listener/alert/log.xml
Listening Endpoints Summary...(DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC1521)))(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=10.211.129.164)(PORT=1521)))
Services Summary...
Service "amronlinecd" has 1 instance(s).Instance "amronline", status READY, has 1 handler(s) for this service...
Service "amronlinecd_XPT" has 1 instance(s).Instance "amronline", status READY, has 1 handler(s) for this service...
Service "fareinlan_cd" has 1 instance(s).Instance "tdpfareinlan", status READY, has 1 handler(s) for this service...
Service "fareintl_cd" has 1 instance(s).Instance "tdpfareintl", status READY, has 1 handler(s) for this service...
Service "orcl" has 1 instance(s).Instance "orcl", status UNKNOWN, has 1 handler(s) for this service...
Service "tdpfareinlanXDB" has 1 instance(s).Instance "tdpfareinlan", status READY, has 1 handler(s) for this service...
Service "tdpfareintlXDB" has 1 instance(s).Instance "tdpfareintl", status READY, has 1 handler(s) for this service...
The command completed successfully

2、監聽停止

[oracle@langtest admin]$ lsnrctl  stop

3、監聽開啟

[oracle@langtest admin]$ lsnrctl  start

4、重新啟動監聽

[oracle@langtest admin]$ lsnrctl  reload

?? 4.4 oracle用戶登錄使用實例響應文件dbca.rsp建庫&建立實例

創建實例也可以參考:Linux下創建Oracle數據庫的實例_linux創建oracle數據庫實例-CSDN博客

dbca.rsp----實例響應文件

🍁 4.4.1 編輯監聽響應文件

1、進入到實例響應文件目錄 :/u01/app/oracle/product/19.3/db_1/assistants/dbca

[oracle@langtest ~]$ cd /u01/app/oracle/product/19.3/db_1/assistants/dbca
[oracle@langtest dbca]$ ls
dbca.rsp  doc  jlib  templates
[oracle@langtest dbca]$ 

?

2、備份實例響應文件

[oracle@langtest dbca]$ cp dbca.rsp dbca.rsp_bak
[oracle@langtest dbca]$ ls
dbca.rsp  dbca.rsp_bak  doc  jlib  templates
[oracle@langtest dbca]$ 

?

3、編輯dbca.rsp 文件,修改以下參數,其中字符可以選擇AL32UTF8 ,或者ZHS16GBK(這里和安裝規劃時保持一致)

[oracle@langtest dbca]$ vi dbca.rsp-- 修改如下:
gdbName=orcl
sid=orcl
databaseConfigType=SI
templateName=General_Purpose.dbc
sysPassword=AFuwd7_5K^sys
systemPassword=AFuwd7_5K^system
emConfiguration=DBEXPRESS
dbsnmpPassword=AFuwd7_5K^dbsnmp
datafileDestination=/oradata02/orcl/
recoveryAreaDestination=/amrbak/flash_recovery_area/ORCL/
characterSet=AL32UTF8
nationalCharacterSet=UTF8
listeners=LISTENER
initParams=processes=800
totalMemory=6144

🍁 4.4.2 使用oracle用戶開始建庫&建立實例?

1、執行實例響應dbca.rsp文件,建庫&建立實例

[oracle@langtest dbca]$ dbca -silent -createDatabase -responseFile /u01/app/oracle/product/19.3/db_1/assistants/dbca/dbca.rsp

2、建庫&建立實例過程:

?

報了一個錯誤,內存不夠,加一個參數,取消內存檢查:-J-Doracle.assistants.dbca.validate.ConfigurationParams=false?

?

最終創建實例的命令:?

[oracle@langtest dbca]$ dbca -silent -createDatabase  -J-Doracle.assistants.dbca.validate.ConfigurationParams=false -responseFile /u01/app/oracle/product/19.3/db_1/assistants/dbca/dbca.rsp

?—— 100%就代表建庫成功,接下來即可登錄使用oracle數據庫——?

🔻 五、數據庫簡單使用

? 5.1 連接數據庫

[oracle@langtest ~]$ source /home/oracle/profile19c 
[oracle@langtest ~]$ ps -ef |grep smon
oracle    81346      1  0 02:04 ?        00:00:00 ora_smon_orcl
oracle    88485      1  0 02:21 ?        00:00:00 ora_smon_amronline
oracle    91814  85628  0 02:31 pts/1    00:00:00 grep smon
oracle   189476      1  0  2023 ?        00:06:06 ora_smon_tdpfareinlan
oracle   192090      1  0  2023 ?        00:06:00 ora_smon_tdpfareintl
[oracle@langtest ~]$ export ORACLE_SID=orcl
[oracle@langtest ~]$ sqlplus / as sysdbaSQL*Plus: Release 19.0.0.0.0 - Production on Thu Jul 11 02:32:13 2024
Version 19.3.0.0.0Copyright (c) 1982, 2019, Oracle.  All rights reserved.Connected to:
Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production
Version 19.3.0.0.0SQL> show user;
USER is "SYS"
SQL> 

? 5.2 啟動或關閉數據庫

[oracle@langtest ~]$ source /home/oracle/profile19c 
[oracle@langtest ~]$ export ORACLE_SID=orcl
[oracle@langtest ~]$ sqlplus / as sysdbaSQL*Plus: Release 19.0.0.0.0 - Production on Thu Jul 11 02:33:25 2024
Version 19.3.0.0.0Copyright (c) 1982, 2019, Oracle.  All rights reserved.Connected to:
Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production
Version 19.3.0.0.0SQL> shutdown immediate
Database closed.
Database dismounted.
ORACLE instance shut down.
SQL>  
SQL> 
SQL> 
SQL> startup
ORACLE instance started.Total System Global Area 4831835720 bytes
Fixed Size                  8906312 bytes
Variable Size             889192448 bytes
Database Buffers         3607101440 bytes
Redo Buffers              326635520 bytes
Database mounted.
Database opened.
SQL> 

? 5.3 查看監聽狀態?

-- 停監聽
[oracle@langtest ~]$ lsnrctl stop-- 啟動監聽
[oracle@langtest ~]$ lsnrctl start-- 監聽狀態
[oracle@langtest ~]$ lsnrctl status

? 5.4 查看數據庫版本

[oracle@langtest ~]$ sqlplus / as sysdbaSQL*Plus: Release 19.0.0.0.0 - Production on Thu Jul 11 02:45:05 2024
Version 19.3.0.0.0Copyright (c) 1982, 2019, Oracle.  All rights reserved.Connected to:
Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production
Version 19.3.0.0.0SQL> set linesize 132
SQL> select * from v$version;BANNER
--------------------------------------------------------------------------------
BANNER_FULL
------------------------------------------------------------------------------------------------------------------------------------
BANNER_LEGACY                                                                        CON_ID
-------------------------------------------------------------------------------- ----------
Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production
Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production
Version 19.3.0.0.0
Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production                    0SQL> 

? 5.5 查看數據實例名、狀態、版本

SQL> select instance_name,status,VERSION from v$instance;INSTANCE_NAME    STATUS       VERSION
---------------- ------------ -----------------
orcl             OPEN         19.0.0.0.0SQL> 

? 5.6 查看所有用戶

-- 檢索用戶信息。可檢索系統用戶(SystemUser)、外部用戶(ExternalUser)、和內部用戶(CommonUser)的所有信息
SQL> select * from dba_users;-- 可以通過該功能來獲取全部數據庫用戶的信息,查出被授權的所有Oracle用戶的角色,賬戶名等信息。
SQL> select * from all_users;-- 描述當前用戶下所有用戶信息的視圖
SQL> select * from user_users;

? 5.7 查看用戶、角色的權限(直接賦值給用戶或角色的權限)

SQL> select * from dba_sys_privs;

? 5.8 當前用戶所擁有的系統權限

SQL> select * from user_sys_privs;

? 5.9 查看角色權限((只能查看登陸用戶擁有的角色權限)

sql> select * from role_sys_privs;

? 5.10?查看所有角色

sql> select * from dba_roles;

? 5.11?查看用戶對象權限

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

? 5.12 查看哪些用戶有DBA權限

SQL> select * from dba_role_privs where granted_role='DBA';GRANTEE                                                                                                                          GRA ADM DEL DEF COM INH
-------------------------------------------------------------------------------------------------------------------------------- --- --- --- --- --- ---
SYS                                                                                                                              DBA YES NO  YES YES YES
SYSTEM                                                                                                                           DBA NO  NO  YES YES YESSQL> 

? 5.12 創建用戶

SQL> create user cmdb identified by "CMDB^Pw8";

? 5.13 授權

GRANT:賦予一個用戶,一個組或所有用戶訪問權限
GRANT 語法:
GRANT privilege [, ...] ON object [, ...] TO { PUBLIC | GROUP group | username }如:
SQL> grant select, insert, update, delete on apm.table178 to cmdb;

? 5.14 回收權限

SQL> revoke select, insert, update, delete on apm.table178 to cmdb;

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/web/43676.shtml
繁體地址,請注明出處:http://hk.pswp.cn/web/43676.shtml
英文地址,請注明出處:http://en.pswp.cn/web/43676.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

物業系統自主研發接口測試框架

1、自主研發框架整體設計 1.1、什么是測試框架? 在了解什么是自動化測試框架之前&#xff0c;先了解一下什么叫框架?框架是整個或部分系統的可重用設計&#xff0c;表現為一組抽象構件及構件實例間交互的方法;另一種定義認為&#xff0c;框架是可被應用開發者定制的應用骨架…

Redis 主從復制,集群與高可用

雖然Redis可以實現單機的數據持久化&#xff0c;但無論是RDB也好或者AOF也好&#xff0c;都解決不了單點宕機問題&#xff0c;即一旦單臺 redis服務器本身出現系統故障、硬件故障等問題后&#xff0c;就會直接造成數據的丟失 此外,單機的性能也是有極限的,因此需要使用另外的技…

捷配生產筆記-細間距芯片的表面處理工藝:OSP與沉金工藝的重要性

在現代電子制造領域&#xff0c;隨著技術的進步&#xff0c;電子設備變得越來越小型化和高性能化。細間距芯片作為實現這一目標的關鍵組件&#xff0c;其制造工藝要求極為嚴格。在這些要求中&#xff0c;表面處理工藝尤為關鍵&#xff0c;因為它直接影響到芯片的焊接質量和長期…

江蘇云服務器適用于哪些場景?

云服務器主要是指一中基于云計算技術的虛擬化服務器&#xff0c;用戶能夠通過互聯網網絡進行遠程訪問和管理&#xff0c;與傳統的物理服務器相比較&#xff0c;云服務器更具有可擴展性與靈活性&#xff0c;所以云服務器受到越來越多的企業所使用&#xff0c;同時在各個領域中都…

實驗7 數據查詢(2)

一、實驗目的 學習SQL語言的定義、操縱功能熟悉通過SQL語言對數據庫進行查詢操作&#xff0c;包括單表查詢、多表查詢、嵌套查詢、集合查詢 二、實驗軟件 MySQL三、實驗內容和要求 給定四個關聯表&#xff0c;其定義和數據加載如下&#xff1a; 學生表 Student create tab…

Cesium中實現圖層組

圖層組 某天領導找我&#xff0c;說業務中可能存在多個影像服務為一個圖層組&#xff0c;并且需要同時加載和同時在圖層列表中上下移動的需求。 例如一些專題地圖&#xff0c;包含所有學校、醫院、公交站等圖層&#xff0c;而這些圖層都是單獨發布的。 在 Cesium 中確實存在…

前端與嵌入式開發通信之QWebChannel(Qt)

前端與嵌入式開發通信之QWebChannel 最近開發中需要用到和c開發的操作臺進行通信的的需求&#xff0c;就找到了這個技術&#xff0c;記錄一下 首先需要安裝導入 qwebchannel npm i qwebchannel import { QWebChannel } from "qwebchannel"; 初始化qwebchannel并封…

myeclipse開發ssm框架項目圖書管理系統 mysql數據庫web計算機畢業設計項目

摘 要 隨著計算機的廣泛應用&#xff0c;其逐步成為現代化的標志。圖書館的信息量也會越來越大&#xff0c;因此需要對圖書信息、借書信息、還書信息等進行管理&#xff0c;及時了解各個環節中信息的變更&#xff0c;要對因此而產生的單據進行及時的處理&#xff0c;為了提高高…

vue3 兩個組件之間傳值

Props 父組件可以通過 props 將數據傳遞給子組件。這是最常見的組件間通信方式 <!-- 父組件 --><template><ChildComponent :message"parentMessage" /></template><script>import ChildComponent from ./ChildComponent.vue;export…

Linux-shell編程入門基礎

文章目錄 前言Shell編程bash特性shell作用域變量環境變量$特殊變量$特殊狀態變量 $特殊符號(很重要)其他內置shell命令shell語法的子串截取統計 指令執行時間練習shell特殊擴展變量父子shell的理解內置和外置命令區別 數值計算雙括號(())運算letexprexpr模式匹配 bcawk中括號 s…

MySQL InnoDB事務隔離的幾種級別

MySQL InnoDB是一種支持事務的存儲引擎&#xff0c;提供了多種事務隔離級別&#xff0c;分別是&#xff1a;讀未提交&#xff08;READ UNCOMMITTED&#xff09;&#xff0c;讀已提交&#xff08;READ COMMITTED&#xff09;&#xff0c;可重復讀&#xff08;REPEATABLE READ&am…

數據結構(Java):Stack相關OJ習題

1、括號匹配問題 . - 力扣&#xff08;LeetCode&#xff09; 1.1 思路分析 根據棧的先進后出原則&#xff0c;我們可以這樣解決問題&#xff1a; 遍歷字符串&#xff0c;遇見左括號就將左括號push入棧&#xff1b;遇見右括號就pop出棧&#xff0c;將出棧的元素和該右括號比較…

最簡單的vue3組件之間傳值

localStorage 是 HTML5 引入的一個 Web Storage API 的一部分&#xff0c;它允許網頁在用戶的瀏覽器上存儲數據。localStorage 提供了一種持久化的本地存儲方案&#xff0c;數據不會因為瀏覽器關閉而丟失&#xff0c;除非用戶或腳本顯式地刪除它們。 localStorage 是一種非常實…

批量提取網頁表格內容至excel文件

問題背景 將網頁的表格內容&#xff08;5237個股票信息&#xff09;復制粘貼到excel文件中 網址&#xff1a;A股上市公司名單-A股上市公司名錄-A股上市公司大全-商業計劃書-可研報告-中商產業研究院數據庫-中商情報網 實現代碼 # 導入包 import pandas as pd import time# 創…

Android中為什么不直接activity調用到view,使用viewrootimpl去與底層溝通,而要追加一個phonewindow來管理呢?

在Android的架構設計中&#xff0c;Activity、PhoneWindow 和 ViewRootImpl 各自扮演著不同的角色&#xff0c;它們之間的協作是為了實現一個更加靈活、可擴展和易于管理的UI系統。不直接從Activity調用到View&#xff0c;而是引入PhoneWindow來管理&#xff0c;主要有以下幾個…

超越傳統:3D生物打印如何利用擴散創造奇跡?

超越傳統&#xff1a;3D生物打印如何利用擴散創造奇跡&#xff1f; 組織工程和再生醫學領域迫切需要能夠模擬人體組織結構和功能的體外模型和組織替代物。然而&#xff0c;傳統的體外模型和組織替代物往往難以滿足高度特異性、復雜性和功能性的要求。3D生物打印技術應運而生&a…

Base64文件流查看下載PDF方法-CSDN

問題描述 數票通等接口返回的PDF類型發票是以Base64文件流的方式返回的&#xff0c;無法直接查看預覽PDF發票&#xff0c; 處理方法 使用第三方在線工具&#xff1a;https://www.jyshare.com/front-end/61/ 在Html代碼框中粘貼如下代碼 <embed type"application/pd…

技術開發分享:商品詳情APP原數據實時接口代碼解析

商品詳情app端原數據實時接口代碼解析主要包括以下幾個步驟&#xff1a; 獲取商品ID&#xff1a;首先需要從淘寶的分享鏈接中提取商品ID&#xff0c;可以通過正則表達式匹配的方式獲取。 構建請求URL&#xff1a;根據商品ID構建請求URL&#xff0c;通常包括淘寶的商品詳情API地…

未來互聯網的新篇章:深度解析Web3技術

隨著技術的不斷演進&#xff0c;Web3正逐漸成為引領未來互聯網發展的關鍵驅動力。本文將深入探討Web3技術的核心概念、關鍵特征以及其對未來互聯網生態的深遠影響&#xff0c;旨在幫助讀者全面理解和把握這一新興技術的發展方向和潛力。 1. Web3的基本概念和演進 Web3并非簡單…

為什么鍵盤上F和J這兩個鍵有兩個凸起的橫線呢?

不知道小伙伴們有沒有注意過&#xff0c;我們常用的電腦鍵盤上&#xff0c;為什么F和J這兩個鍵總是有兩個凸起的橫線的呢&#xff1f; 首先&#xff0c;讓我們來回顧一下這位陪伴我們多年的老朋友——鍵盤。從最初的打字機到現在的機械鍵盤、薄膜鍵盤&#xff0c;鍵盤的形態和…