1、環境準備html
有須要安裝時的軟件或安裝中遇到的一些問題,請私信解決!linux
1.linux.x64_11gR2_database_1of2.zipc++
linux.x64_11gR2_database_2of2.zip (下載地址)sql
2.還可能會用到Xmanager中的Xstart數據庫
2、 安裝前準備vim
一、建立oracle數據庫的系統用戶和用戶組bash
admin \@localhost \~]\$ su root Password: [root\@localhost admin]\# groupadd oinstall \#建立用戶組oinstall [root\@localhost admin]\# groupadd dba \#建立用戶組dba [root\@localhost admin]\# useradd -g oinstall -G dba -m oracle \#建立oracle用戶,並加入到oinstall和dba用戶組\ [root\@localhost admin]\# passwd oracle \#設置用戶oracle的登錄密碼 Changing password for user oracle. New password: BAD PASSWORD: The password is shorter than 8 characters Retype new password: \#確認密碼 passwd: all authentication tokens updated successfully. [root\@localhost admin]\# id oracle \#查看新建的oracle用戶 uid=1001(oracle) gid=1002(dba) groups=1002(dba)
*:-g:指定用戶所屬的羣組 -G:指定用戶所屬的附加羣組 -m:自動創建用戶的登入目錄服務器
二、建立oracle數據庫安裝目錄網絡
[root\@localhost admin]\# mkdir -p /data/oracle \#安裝目錄 [root\@localhost admin]\# mkdir -p /data/oraInventory \#配置文件目錄 [root\@localhost admin]\# mkdir -p /data/orapackage \#軟件包解壓目錄 [root\@localhost admin]\# cd /usr [root\@localhost usr]\# ls orapackage oracle oraInventory ... [root\@localhost usr]\# chown -R oracle:oinstall /data/oracle \#設置目錄全部者爲oinstall用戶組的oracle用戶 [root\@localhost usr]\# chown -R oracle:oinstall /data/oraInventory [root\@localhost usr]\# chown -R oracle:oinstall /data/orapackage
三、修改OS系統標識併發
oracle默認不支持CentOS系統安裝, 修改文件 /etc/RedHat-release 內容爲RedHat-7
[root\@localhost admin]\#vi /etc/redhat-release \#修改文件名稱 redhat-7
4.安裝oracle數據庫所須要的軟件包
可參考:https://docs.oracle.com/cd/E11882_01/install.112/e47689/pre_install.htm#BABCFJFG 安裝所需安裝包
[root\@localhost admin]\# yum -y install binutils compat-libcap1 compat-libstdc++-33 compat-libstdc++-33\*i686 compat-libstdc++-33\*.devel compat-libstdc++-33 compat-libstdc++-33\*.devel gcc gcc-c++ glibc glibc\*.i686 glibc-devel glibc-devel\*.i686 ksh libaio libaio\*.i686 libaio-devel libaio-devel\*.devel libgcc libgcc\*.i686 libstdc++ libstdc++\*.i686 libstdc++-devel libstdc++-devel\*.devel libXi libXi\*.i686 libXtst libXtst\*.i686 make sysstat unixODBC unixODBC\*.i686 unixODBC-devel unixODBC-devel\*.i686
檢測是否31個包都有安裝
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
五、關閉防火牆
CentOS 7默認使用的是firewall做爲防火牆
[root\@localhost admin]\# systemctl status firewalld.service \#查看防火牆狀態 ● firewalld.service - firewalld - dynamic firewall daemon Loaded: loaded (/usr/lib/systemd/system/firewalld.service; enabled; vendor preset: enabled) Active: active (running) since Thu 2016-04-07 18:54:29 PDT; 2h 20min ago [root\@localhost admin]\# systemctl stop firewalld.service \#關閉防火牆 [root\@localhost admin]\# systemctl status firewalld.service \#再次查看防火牆狀態 ● firewalld.service - firewalld -dynamic firewall daemon Loaded: loaded (/usr/lib/systemd/system/firewalld.service; enabled; vendor preset: enabled) Active: inactive (dead) since Thu 2016-04-07 21:15:34 PDT; 9s ago [root\@localhost admin]\# systemctl disable firewalld.service \#關閉開機自動啓動
六、關閉selinux(需重啓生效)
[root\@localhost /]\# vi /etc/selinux/config # This file controls the state of SELinux on the system. # SELINUX= can take one of these three values: # enforcing - SELinux security policy is enforced. # permissive - SELinux prints warnings instead of enforcing. # disabled - No SELinux policy is loaded. SELINUX=disabled \#此處修改成disabled # SELINUXTYPE= can take one of three two values: # targeted - Targeted processes are protected, # minimum - Modification of targeted policy. Only selected processes are protected. # mls - Multi Level Security protection. SELINUXTYPE=targeted
七、修改內核參數
[root\@localhost admin]\# vi /etc/sysctl.conf # System default settings live in /usr/lib/sysctl.d/00-system.conf. # To override those settings, enter new settings here, or in an /etc/sysctl.d/\<name\>.conf file # For more information, see sysctl.conf(5) and sysctl.d(5). net.ipv4.icmp_echo_ignore_broadcasts = 1 net.ipv4.conf.all.rp_filter = 1 fs.file-max = 6815744 \#設置一個進程能夠打開的最大打開文件數 fs.aio-max-nr = 1048576 \#限制未完成的併發請求,避免I/O系統故障 kernel.shmall = 2097152 #共享內存的總量,應不小於shmmax/page_size缺省值就是2097152 kernel.shmmax = 2147483648 \#最大共享內存的段大小,不小於物理內存的一半 kernel.shmmni = 4096 \#整個系統共享內存端的最大數 kernel.sem = 250 32000 100 128 \#設置的信號量 net.ipv4.ip_local_port_range = 9000 65500 \#可以使用的IPv4端口範圍 net.core.rmem_default = 262144 \#默認接收緩衝區大小 net.core.rmem_max= 4194304 \#接收緩衝區最大值 net.core.wmem_default= 262144 \#默認的發送緩衝區大小 net.core.wmem_max= 1048576 \#發送緩衝區最大值 使配置參數生效 [root\@localhost admin]\# sysctl –p
八、設置用戶限制,提升軟件運行性能
[root\@localhost admin]\# vi /etc/security/limits.conf #@student - maxlogins 4 ................. oracle soft nproc 2047 oracle hard nproc 16384 oracle soft nofile 1024 oracle hard nofile 65536 oracle soft stack 10240 oracle hard stack 32768 # End of file
十、配置用戶的環境變量
[root\@localhost /]\# vi /home/oracle/.bash_profile (看仔細,很重要) ........... export PATH export ORACLE_BASE=/data/oracle \#oracl安裝目錄 export ORACLE_HOME=\$ORACLE_BASE/product/11.2.0/db_1 \#oracle路徑 export ORACLE_SID=orcl \#oracle啓動數據庫實例名 export ORACLE_TERM=xterm \#xterm窗口模式安裝 export PATH=\$ORACLE_HOME/bin:/usr/sbin:\$PATH \#添加系統環境變量 export LD_LIBRARY_PATH=\$ORACLE_HOME/lib:/lib:/usr/lib \#添加系統環境變量 export LANG=C \#防止安裝過程出現亂碼 export NLS_LANG=AMERICAN_AMERICA.ZHS16GBK \#設置Oracle客戶端字符集,
必須與Oracle客戶端安裝時設置的字符集保持一致。有的是設爲AL32UTF8,根據須要自行設定。
獲取安裝包文件的方式,可經過ftp服務器,也可經過wget下載到指定目錄,解壓方式以下
在oracle用戶中上傳1gR2_database_1of2.ziplinux.x64_11gR2_database_2of2.zip安裝包上傳到/usr/local/src
[oracle\@localhost /]\$ cd /usr/local/src \#進入/usr/local/src目錄 [oracle\@localhost src]\$ ls linux.x64_11gR2_database_1of2.zip linux.x64_11gR2_database_2of2.zip [oracle\@localhost src]\$ unzip linux.x64_11gR2_database_1of2.zip –d /data/database/ \#解壓到data目錄下 (省略...) [oracle\@localhost src]\$ unzip linux.x64_11gR2_database_2of2.zip -d /data/database/ \#解壓到data目錄下 (省略...) 使配置生效 [root\@localhost admin]\# source /home/oracle/.bash_profile
3、oracle安裝
[oracle\@localhost \~]\$ cd /data/database/ [oracle\@localhost database]\$ ls doc install response rpm runInstaller sshsetup stage welcome.html [oracle\@localhost database]\$ ./runInstaller
安裝問題:
- 安裝Oracle數據庫軟件,提示「檢查監視器」未經過
檢查臨時空間: 必須大於 120 MB。 實際爲 36939 MB 經過
檢查交換空間: 必須大於 150 MB。 實際爲 8047 MB 經過
檢查監視器: 監視器配置至少必須顯示 256 種顏色
\>\>\> 沒法使用命令 /usr/bin/xdpyinfo 自動檢查顯示器顏色。請檢查是否設置了
DISPLAY 變量。 未經過 <<<<
解決方法:根據報錯信息,首先想到的是配置DISPLAY變量(通常配置一下就能夠解決)
[root\@db130 \~]\# yum install -y xdpyinfo [root\@db130 \~]\# xhost + access control disabled, clients can connect from any host [root\@db130 \~]\# su - oracle [oracle\@db130 \~]\$ export DISPLAY=:0.0 [oracle\@db130 \~]\$ cd /data/database/database/ [oracle\@db130 database]\$ ./runInstaller
正在啓動 Oracle Universal Installer...
- 過程彈框界面是一個白色豎線通常,整個界面沒法點擊next按鈕
解決辦法:這裏推薦使用Xmanager工具中的Xstart。
保持CentOS聯網狀態,以root用戶登陸,執行命令:yum install -y xterm
安裝完畢後,啓動Xstart,輸入主機IP並用oracle用戶登陸,
輸入命令:/usr/bin/xterm -ls -display $DISPLAY
進入安裝界面
(1)以下圖所示,去掉「I wish receive security via My Oracle Support」的勾選,單擊「next」,選「yes」繼續。
(2)選中「Create and configure a database」,點擊「next」
第一項爲企業級應用
第二項只安裝數據庫
第三項爲升級現有數據庫
(3)選中「DesktopClass」,點擊「next」
第一項爲桌面類:通常適用於臺式機和筆記本,包含最小數據庫和最低配置要求,安裝時只有基本選項。
第二項爲服務類:適用於服務器,例如,它會向您提供數據中心和用於支持企業級的應用程序。
4)這裏若是安裝前準備按照文檔操做的話,這裏只需填寫passwrod便可(無視警告),點擊「next」
默認選擇
(5)以後的配置通常都選擇默認,當流轉到這個界面時,選中Character sets選項,
修改字符集爲UTF-8後繼續「next」
(6)以後配置繼續按照默認便可,當流轉到這個界面時,能夠爲全部用戶設置密碼,我設置的oracle,點擊「next
(6)流轉到這個頁面,若是以前安裝依賴包會有下面圖中包提示失敗,一個一個檢查package,在準備階段中漏掉的,此處再安裝,有些系統報錯是由於現有的包的版本比檢測要高,最後忽略便可。(點擊Check_Again 多檢查幾回,根據錯提示進行操做)
(7)當安裝進度達到68%時,會出現如上圖所示報錯(根據報錯打開該文件)
查找安裝目錄下該文件:/usr/oracle/product/11.2.0/db_1/ctx/lib/ins_ctx.mk
[admin \@localhost \~]\$ su root Password: [root\@localhost admin]\# vim /usr/oracle/product/11.2.0/db_1/ctx/lib/ins_ctx.mk 修改以下文件內容(11行左右) ctxhx: \$(CTXHXOBJ) \$(LINK_CTXHX) \$(CTXHXOBJ) \$(INSO_LINK) 修改成: ctxhx: \$(CTXHXOBJ) \-static \$(LINK_CTXHX) \$(CTXHXOBJ)\$(INSO_LINK) /usr/lib64/libc.a
保存(:wq)後,點擊Retry繼續安裝
若還報錯 打開此安裝目錄下文件:/usr/oracle/product/11.2.0/db_1/sysman/lib/ins_emagent.mk
修改以下內容(190行左右) \$(MK_EMAGENT_NMECTL) 修改成 \$(MK_EMAGENT_NMECTL) -lnnz11
打開控制端,以root權限執行所示兩個腳本
[root\@localhost /]\# sh /usr/oraInventory/orainstRoot.sh [root\@localhost /]\# sh /usr/oracle/product/11.2.0/db_1/root.sh 此處輸入紅色部分的路徑回車: Enter the full pathname of the local bin directory: [/usr/local/bin]: Copying dbhome to /usr/local/bin ... Copying oraenv to /usr/local/bin ... Copying coraenv to /usr/local/bin ...
四、建立Oracle監聽
[oracle\@localhost \~]\$ netca
選擇監聽器協議,默認TCP,點擊Next 配置監聽端口,默認1521,點擊Next 配置完成,提示是否增長另外的監聽器,選擇No,點擊Next 點擊Finish結束配置程序,命令行界面會提示配置的信息並將新的監聽器啓動
監聽器的啓動和中止
lsnrctl start LISTENER #啓動名爲LISTENER的監聽器 lsnrctl stop LISTENER #關閉名爲LISTENER的監聽器
查看監聽器運行狀態
lsnrctl status LISTENER #查看名爲LISTENER的監聽器的運行狀態
五、安裝oracle數據庫實例
[oracle\@localhost \~]\$ dbca
1)、在/etc/fstab中明確指定/dev/shm的掛載sizes大小參數**
查看/dev/shm的大小
[oracle\@localhost \~]\$ df –h /dev/shm Filesystem Size Used Avail Use% Mounted on tmpfs 1.9G 29M 1.8G 2% /dev/shm
能夠看到/dev/shm的大小爲1.9G,設置爲70%的時候所需空間的大小爲2582M,已經超出其最大空間。/dev/shm默認爲物理內存大小的一半,根據須要我將其設爲3G,以root權限執行如下命令:
[root\@localhost oracle]\# vi /etc/fstab tmpfs /dev/shm tmpfs defaults 0 0 修改成 tmpfs /dev/shm tmpfs defaults,size=3G 0 0
若是沒有就直接添加上去,保存退出(:wq)
2)、將/dev/shm從新掛載
[root\@localhost oracle]\# mount -o remount /dev/shm [root\@localhost oracle]\# df –h /dev/shm Filesystem Size Used Avail Use% Mounted on tmpfs 3.0G 25M 3.0G 1% /dev/shm
此種方式是永久更改/dev/shm 的空間大小,若是隻要臨時更改(重啓無效),執行以下命令:
[oracle\@localhost \~]\$ sudo mount -o size=3G -o remount /dev/shm
設置字符集,選擇與安裝Oracle時的設置相同的字符集,ZHS16GBK。若是Oracle用的字符集爲AL32UTF8,就選擇AL32UTF8。固然,若是這裏字符集選錯了,安裝好了也是能夠修改的,只是稍有麻煩。
設置鏈接類型,共享內存或者獨享內存,也能夠默認,點擊Next
選擇Generate Database Creation Scripts(生成數據庫建立腳本),能夠爲手工建庫腳本提供參考
點擊Finish,完成建立
啓動監聽:lsnrctl start #必須將監聽啓動,若是以前防火牆沒關,還須要關閉防火牆。
輸入:sqlplus /nolog
輸入:conn sys/sys[@orcl](https://my.oschina.net/u/3674287) as sysdba
其中,orcl是實例名,sys是它的密碼。若是出現下圖所示的「Connected.」則鏈接成功,說明數據庫創建成功(這裏是在CentOS終端上使用的)。
輸入:sqlplus scott/tiger@192.168.78.130:1521/orcl ,回車(查詢ip,使用ifconfig 命令)
查詢當前用戶:show user;
查詢用戶下有幾張表:select * from tab;
查詢表字段:desc emp ; #emp是表名
查詢表數據:select * from emp;
退出SQL命令模式exit;
六、建立表空間和用戶受權
1)、鏈接數據庫
[oracle\@localhost \~]\$ sqlplus /nolog SQL\*Plus: Release 11.2.0.1.0 Production on Fri Jan 19 10:23:13 2018 Copyright (c) 1982, 2009, Oracle. All rights reserved. SQL\> conn / as sysdba Connected. SQL\>
2)、建立數據表空間
SQL\> CREATE TABLESPACE ALS LOGGING DATAFILE '/usr/oracle/oradata/orcl/ALS.DBF' SIZE 50M AUTOEXTEND ON NEXT 50M MAXSIZE 20480M EXTENT MANAGEMENT LOCAL;
說明:
CREATE TABLESPACE 表空間名 LOGGING DATAFILE '存放路徑' SIZE 50M AUTOEXTEND ON NEXT 50M MAXSIZE 20480M EXTENT MANAGEMENT LOCAL;
3)、建立用戶並指定表空間
SQL\> CREATE USER sa IDENTIFIED BY kcsm111 DEFAULT TABLESPACE ALS;
說明:
CREATE USER 用戶名 IDENTIFIED BY 密碼 DEFAULT TABLESPACE 表空間名;
4)、給用戶授予權限
SQL\>grant connect,resource,dba to sa;
說明:
grant connect,resource,dba to 用戶名;
5)、刪除表空間
SQL\> drop tablespace ALS including contents and datafiles cascade constraints;
說明:
drop tablespace 表空間名 including contents and datafiles cascade constraints;
including contents 刪除表空間中的內容,若是刪除表空間以前表空間中有內容,而未加此參數,表空間沒法刪除。
including datafiles 刪除表空間中的數據文件
cascade constraints 同時刪除表空間中表的外鍵參照
至此全部安裝完成
4、 設置數據庫自啓動 方法一: 一、安裝好Oracle數據庫後: 執行 dbstart和dbshut
[oracle\@localhost \~]\$ dbstart ORACLE_HOME_LISTNER is not SET, unable to auto-start Oracle Net Listener Usage: /usr/oracle/product/11.2.0/db_1/bin/dbstart ORACLE_HOME
錯誤緣由:dbstart和dbshut腳本文件中ORACLE_HOME_LISTNER的設置有問題
[oracle\@localhost \~]\$ vim \$ORACLE_HOME/bin/dbstart [oracle\@localhost \~]\$ vim \$ORACLE_HOME/bin/dbshut 分別打開兩個文件修改(50行左右) ORACLE_HOME_LISTNER=\$1 修改成: ORACLE_HOME_LISTNER=\$ORACLE_HOME
修改後保存退出,問題解決
二、Linux啓動時自動啓動Oracle監聽和實例
第一步:修改/etc/oratab文件 [oracle\@localhost \~]\$ vim /etc/oratab 找到: orcl:/usr/oracle/product/11.2.0/db_1:N 修改成: orcl:/usr/oracle/product/11.2.0/db_1:Y
(這個路徑跟安裝路徑有關,$ORACLE_SID:$ORACLE_HOME:<N|Y>)
第二步:把lsnrctl start和dbstart添加到rc.local文件中:
root權限執行
[root\@localhost oracle]\# vim /etc/rc.d/rc.local 添加: su - oracle -lc "/usr/oracle/product/11.2.0/db_1/bin/lsnrctl start" su - oracle -lc "/usr/oracle/product/11.2.0/db_1/bin/dbstart"
說明:
第一行爲開機啓動數據庫監聽服務,第二行爲開機啓動數據庫。(路徑跟安裝路徑相關)。
注意:CentOs7中/etc/rc.d/rc.local不會開機執行,需添加執行權限。
查看/etc/rc.d/rc.local的權限
[root\@localhost oracle]\# ll /etc/rc.d/rc.local 添加執行權限 [root\@localhost oracle]\# chmod +x /etc/rc.d/rc.local
三、重啓電腦後查看是否自啓動成功
查看監聽是否自啓動成功
[oracle\@localhost \~]\$ lsnrctl status LISTENER 查看Oracle服務狀態 [oracle\@localhost \~]\$ ps –ef \| grep oracle
四、oracle的啓動或關閉管理
[root\@localhost oracle]\# dbstart \#啓動 [root\@localhost oracle]\# dbshut
方法二:
一、修改/etc/oratab文件
root權限執行
[root\@localhost oracle]\# vim /etc/oratab 找到: orcl:/usr/oracle/product/11.2.0/db_1:N 修改成: orcl:/usr/oracle/product/11.2.0/db_1:Y
(這個路徑跟安裝路徑有關,$ORACLE_SID:$ORACLE_HOME:<N|Y>)
二、新建Oracle服務自啓動腳本
[root\@localhost oracle]\# vim /etc/init.d/oracle 將如下腳本複製到文件中,保存退出(:wq) \#!/bin/sh \# chkconfig: 2345 61 61 \# description: Oracle 11g R2 AutoRun Servimces \# /etc/init.d/oracle \# \# Run-level Startup script for the Oracle Instance, Listener, and \# Web Interface export ORACLE_BASE=/usr/oracle \#oracle安裝位置 export ORACLE_HOME=\$ORACLE_BASE/product/11.2.0/db_1 \#Oracle安裝路徑 export ORACLE_SID=orcl export PATH=\$PATH:\$ORACLE_HOME/bin ORA_OWNR="oracle" \# if the executables do not exist -- display error if [ ! -f \$ORACLE_HOME/bin/dbstart -o ! -d \$ORACLE_HOME ] then echo "Oracle startup: cannot start" exit 1 fi \# depending on parameter -- startup, shutdown, restart \# of the instance and listener or usage display case "\$1" in start) \# Oracle listener and instance startup su \$ORA_OWNR -lc \$ORACLE_HOME/bin/dbstart echo "Oracle Start Succesful!OK." ;; stop) \# Oracle listener and instance shutdown su \$ORA_OWNR -lc \$ORACLE_HOME/bin/dbshut echo "Oracle Stop Succesful!OK." ;; reload\|restart) \$0 stop \$0 start ;; \*) echo \$"Usage: \`basename \$0\` {start\|stop\|reload\|reload}" exit 1 esac exit 0
三、檢查腳本可否執行
[root\@localhost oracle]\# /etc/init.d/oracle start \#啓動oracle腳本 [root\@localhost oracle]\# /etc/init.d/oracle stop \#關閉oracle腳本 [root\@localhost oracle]\# /etc/init.d/oracle restart \#重啓oracle腳本
四、添加執行權限並創建連接
更改oracle腳本的執行權限
[root\@localhost oracle]\# chmod a+x /etc/init.d/oracle
創建連接
將啓動腳本添加到系統服務並設置自啓動
[root\@localhost oracle]\# chkconfig --add oracle
修改服務運行等級(雖然腳本里寫過,但仍是從新設置一下),能夠自行設置oracle腳本的運行級別
[root\@localhost oracle]\# chkconfig --level 2345 oracle on
說明:設置oracle腳本在運行級別爲二、三、四、5時,都是on(開啓)狀態,off爲關閉
查看oracle自動啓動設置
[root\@localhost oracle]\# chkconfig –list oracle Oracle 0:off 1:off 2:on 3:on 4:on 5:on 6:off *等級0表示:表示關機 等級1表示:單用戶模式 等級2表示:無網絡鏈接的多用戶命令行模式 等級3表示:有網絡鏈接的多用戶命令行模式 等級4表示:不可用 等級5表示:帶圖形界面的多用戶模式 等級6表示:從新啓動*
手動建立符號連接文件(執行效果和執行chkconfig --add oracle是同樣,做爲知識筆記記錄,能夠不執行)
[root\@localhost oracle]\# ln –s /etc/rc.d/init.d/oracle /etc/rc0.d/K61oracle [root\@localhost oracle]\# ln –s /etc/rc.d/init.d/oracle /etc/rc1.d/K61oracle [root\@localhost oracle]\# ln –s /etc/rc.d/init.d/oracle /etc/rc2.d/S61oracle [root\@localhost oracle]\# ln –s /etc/rc.d/init.d/oracle /etc/rc3.d/S61oracle [root\@localhost oracle]\# ln –s /etc/rc.d/init.d/oracle /etc/rc4.d/S61oracle [root\@localhost oracle]\# ln –s /etc/rc.d/init.d/oracle /etc/rc5.d/S61oracle [root\@localhost oracle]\# ln –s /etc/rc.d/init.d/oracle /etc/rc6.d/K61oracle
五、oracle的啓動或關閉管理
[root\@localhost oracle]\# service oracle start ##//啓動 [root\@localhost oracle]\# service oracle stop ##//中止 [root\@localhost oracle]\# service oracle restart ##//重啓
5、 數據庫字符集修改
注意事項:修改字符集前先將數據庫進行備份
此處演示將ZHS16GBK字符集修改成AL32UTF8
一、修改server端字符集
登陸sqlpus查看字符集設置
[oracle\@localhost \~]\$ sqlplus /nolog SQL\*Plus: Release 11.2.0.1.0 Production on Wed Jan 24 13:55:51 2018 Copyright (c) 1982, 2009, Oracle. All rights reserved. SQL\> conn /as sysdba Connected to an idle instance.
數據庫未啓動,先啓動數據庫。最好將數據庫設未開機啓動
SQL\> startup SQL\> conn /as sysdba Connected. \#鏈接成功 SQL\> select userenv('language') from dual; \#server端字符集查詢 USERENV('LANGUAGE') \---------------------------------------------------- AMERICAN_AMERICA.ZHS16GBK
依次執行以下命令
SQL\>SHUTDOWN IMMEDIATE; SQL\>STARTUP MOUNT; SQL\>ALTER SYSTEM ENABLE RESTRICTED SESSION; SQL\>ALTER SYSTEM SET JOB_QUEUE_PROCESSES=**0**; SQL\>ALTER SYSTEM SET AQ_TM_PROCESSES=**0**; SQL\>ALTER DATABASE OPEN; SQL\>ALTER DATABASE CHARACTER SET INTERNAL_USE AL32UTF8; SQL\>SHUTDOWN IMMEDIATE; SQL\>STARTUP; SQL\> select userenv('language') from dual; USERENV('LANGUAGE') AMERICAN_AMERICA.AL32UTF8 SQL\>
二、修改client端字符集
查看系統環境變量設置的字符集(client端字符集)
[oracle\@localhost \~]\$ cat /home/oracle/.bash_profile ... PATH=\$PATH:\$HOME/.local/bin:\$HOME/bin export PATH export ORACLE_BASE=/usr/oracle export ORACLE_HOME=\$ORACLE_BASE/product/**11.2**.**0**/db_1 export ORACLE_SID=orcl export ORACLE_TERM=xterm export PATH=\$ORACLE_HOME/bin:/usr/sbin:\$PATH export LD_LIBRARY_PATH=\$ORACLE_HOME/lib:/lib:/usr/lib export LANG=C export NLS_LANG=AMERICAN_AMERICA.ZHS16GBK \#客戶端字符集 [外鏈圖片轉存中...(img-iD0JQrjM-1576131393379)] 進入編輯界面,將ZHS16GBK改成AL32UTF8,保存退出 [oracle\@localhost \~]\$ vim /home/oracle/.bash_profile 那麼使配置生效 [oracle\@localhost \~]\$ source /home/oracle/.bash_profile
若是建立用戶名密碼登錄不上,仔細查看環境變量(vim /home/oracle/.bash_profile)是否正確,可能緣由找不到SID,執行:
[oracle\@localhost \~]\$ export ORACLE_SID=orcl
下面基本就完成部署了,若是有補充或修改還請留言哦!!///////