设为首页 收藏本站
查看: 887|回复: 0

[经验分享] SQL记录-Linux CentOS配置ORACLE 12c

[复制链接]

尚未签到

发表于 2017-11-15 15:47:25 | 显示全部楼层 |阅读模式
1.准备LIINX软件包
  操作系统:centos7
  虚拟机:VMware 12
  JDK:1.8
  数据库:oracle 12c

2.配置基础环境

2.1 部署虚拟机VM(过程略)

2.2 部署操作系统Centos(过程略)

2.3 配置NAT网络环境
  #网络适配器为NAT模式
  #VM虚拟机-编辑-虚拟网络编辑器-添加VMnet8节点,配置NAT模式网段:子网-192.168.66.0,网关-192.168.66.2
  #设置centos静态IP配置(/etc/sysconfig/network-scripts/ifcfg-ens33 )



TYPE=Ethernet
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=static
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=no
IPV6_AUTOCONF=no
IPV6_DEFROUTE=no
IPV6_FAILURE_FATAL=no
IPV6_ADDR_GEN_MODE=stable-privacy
NAME=ens33
UUID=7ea5375c-4db2-4132-9df9-dfe79362f31c
DEVICE=ens33
ONBOOT=yes
GATEWAY=192.168.66.2
PADDR=192.168.66.68
NETMASK=255.255.255.0
DNS1=192.168.66.2

  #关闭防火墙:systemctl stop firewalld.service    systemctl disable firewalld.service
  #关闭SLinux安全控制



#vim /etc/selinux/config
#SELINUX=enforcing #注释掉
#SELINUXTYPE=targeted #注释掉
SELINUX=disabled #增加
:wq! #保存退出
#setenforce 0 #使配置立即生效

  #将有线网或无线网共享给vmnet8(网络连接右键-属性-共享)
  #ping www.baidu.com  测试网络是否连通

3.配置JDK
  #mkdir /usr/app   新建目录
  #上传并解压软件包到/usr/app,使用mv更名为jdk1.8.0
  #配置/etc/profile



vim /etc/profile
#set java environment  
export JAVA_HOME=/usr/app/jdk1.8.0
export JRE_HOME=/usr/app/jdk1.8.0/jre  
export CLASS_PATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib  
export PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin  
export JAVA_HOME JRE_HOME CLASS_PATH PATH
#source /etc/profile  立即生效
#java  -version   测试JDK环境是否正常

4.创建oracle相关用户和组



#groupadd dba 创建组别
#groupadd oinstall #创建组别
#useradd -g oinstall -G dba -m oracle 添加用户并指定组别
#id oracle 查看用户的组别信息
uid=500(oracle) gid=501(oinstall) groups=501(oinstall),500(dba)
#passwd oracle 设置登录密码

5.创建oracle软件安装目录



#df -TH 查看挂载情况,保证至少有60GB的空间,显存2.5GB以上
#mkdir /usr/app/oracle/oracle -p
#mkdir /usr/app/oracle/oraInventory  -p
#mkdir /usr/app/oracle/database  -p
#chown -R oracle. /usr/app/oracle 授予组别和拥有者
#chmod 755 -R /usr/app/oracle 授权相关权限
#ls -ll /usr/app/oracle 查看组别是否为oinstall,拥有者是否为oracle

6.上传oracle安装包
  #使用xftp上传到/usr/app/oracle/database下,并使用tar zxvf或unzip进行解压
  #chown -R oracle. /usr/app/oracle 授予组别和拥有者
  #chmod 755 -R /usr/app/oracle 授权相关权限

7.配置oracle环境



vim /etc/profile
export ORACLE_BASE=/usr/app/oracle/oracle
export ORACLE_HOME=$ORACLE_BASE/product/12.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 NLS_LANG=AMERICAN_AMERICA.ZHS16GBK
if [ $USER = "oracle" ];then
if [ $SHELL = "/bin/ksh" ];then
ulimit -p 16384
ulimit -n 65536
else
ulimit -u 16384 -n 65536
fi
fi
#source /ect/profile   立即生效

8.修改内核参数和安全控制



#vim /etc/sysctl.conf 添加以下内容
kernel.shmmax = 68719476736
kernel.shmall = 4294967296
net.core.rmem_default = 262144
net.core.rmem_max = 4194304
net.core.wmem_default = 262144
net.core.wmem_max = 1048576
fs.aio-max-nr = 1048576
net.ipv4.ip_local_port_range = 9000 65500
fs.file-max = 6815744
kernel.sem = 250 32000 100 128
kernel.shmmni = 4096
#sysctl -p  #立即生效
#修改安全限制
#vim /etc/security/limits.conf文件末尾添加如下内容
oracle          soft    nproc           2047
oracle          hard    nproc           16384
oracle          soft    nofile          4096
oracle          hard    nofile          65536
#vim /etc/pam.d/login文件,添加以下内容
session    required     pam_limits.so

9.安装依赖包



yum install -y gcc gcc-c++ libaio glibc compat-libstdc++-33 elfutils-libelf-devel libaio-devel libgcc libstdc++ libstdc++-devel unixODBC unixODBC-devel glibc-common ksh make sysstat pdksh

10.xshell远程调用xmanager图形安装
  #安装xshell、xmanager系列软件

#无桌面Linux系统(安装桌面组件)
  yum clean all
  yum groupinstall  "X Window System" -y
  yum groupinstall  "Desktop"
  yum groupinstall  "GNOME Desktop Environment" -y
  yum -y install tigervnc-server
  yum -y install lrzsz scp mlocate
  #xshell会话设置
DSC0000.png

  #su oracle 切换用户输入密码
  #export DISPLAY=172.20.107.151:0.0 #w查看客户端IP
  #xhost +
  access control disabled,clients can connect from any host
  #gnome-panel  #连接Xmanager进入图形界面(可忽略)
  #进入database目录,执行runInstaller,选择好参数进行安装
  #./runInstaller 执行安装

#有桌面的LINUX系统
  使用oracle用户登录桌面,执行./runInstaller进行安装,选择安装数据库软件-单个实例进行安装。

11.dbca新建数据库
  Linux系统新建数据库,需要启动图形界面
  #su oracle 切换用户输入密码
  #export DISPLAY=172.20.107.151:0.0 #w查看客户端IP
  #xhost +
  #dbca    ###勾选enterprise manager
  输入SID、数据库名、system/sys的密码,选择好字符集GBK-Chinese,注意db_block_size块不可更改,根据操作系统固定为8192,对应8k,最大支持单个数据文件32GB,如超出范围,需另加一个数据文件,并指定在同一表空间下。

12.数据库启动和关闭操作



#su oracle
#lsnrctl start  启动监听
#lsnrctl status 查看监听状态
#lsnrctl stop 停止监听
#ps -ef | grep ora_  查看oracle进程
#sqlplus /nolog 无密进入超级用户  sqlplus / as sysdba
SQL>connect / as sysdba
SQL>select status from v$instance;#查看实例状态
SQL>select name from v$database; #查看SID
SQL>select name from v$datafile;#查看数据库空间路径
SQL>select member from v$logfile;#查看日志路径
SQL>select * from v$version;#查看版本号
SQL>startup; #开启实例
SQL>shutdown immediate; #关闭实例
SQL>create  tablespace  BIT datafile   '/usr/app/oracle/oracle/oradata/ORCL/BIT01.dbf' size 100M autoextend on  next 100M maxsize unlimited,'/usr/app/oracle/oracle/oradata/ORCL/BIT02.dbf' size 100M autoextend on  next 100M maxsize unlimited;#创建表空间
SQL>create  user  c##bit  identified   by   bit123  default   tablespace BIT;#创建用户
SQL>grant   dba,connect,resource to  c##bit; 授予DBA角色

附录:CDB与PDB一些操作



附录---CDB与PDB一些操作
#查看PDB状态
SELECT con_id,dbid,NAME,OPEN_MODE from v$pdbs;
#更改容器为PDB
alter session set container=PDBORCL;
#切换到CDB
alter session set container=CDB$ROOT;
#查看表空间 SELECT t.tablespace_name FROM dba_tablespaces t;
#创建表空间 create tablespace BIT datafile '/usr/app/oracle/oracle/oradata/ORCL/BIT01.dbf' size 100M autoextend
on next 100M maxsize unlimited,'/usr/app/oracle/oracle/oradata/ORCL/BIT02.dbf' size 100M autoextend on
next 100M maxsize unlimited;
#新建用户并授权
create user c##bit identified by bit123 default tablespace BIT;
GRANT dba,CONNECT,resource TO c##bit;
#修改sys和system密码
alter user sys identified by 1;
alter user system identified by 1;
#删除表空间
drop tablespace BIT including contents and datafiles ;
#删除用户
drop user BIT cascade;
#关闭PDB
alter pluggable database PDBORCL close;
#查看所有用户
select * from all_users;
#开启CDB
sqlplus / as sysdba
SQL>startup
SQL> set linesize 120
SQL> select instance_name,status from v$instance;
SQL> select name,cdb from v$database;
SQL> show con_name
SQL> SHUTDOWN IMMEDIATE
#开启和关闭PDB
SQL> show con_name S
QL> show pdbs
SQL> alter pluggable database pdb1 open;
SQL> alter pluggable database pdb1 close;
SQL> show pdbs #切换到容器PDB1
SQL> alter session set container=pdb1;
SQL> SHOW CON_NAME
#创建触发器随CDB启动而启动PDB
SQL> CREATE OR REPLACE TRIGGER open_pdbs AFTER STARTUP ON DATABASE BEGIN
EXECUTE IMMEDIATE 'ALTER PLUGGABLE DATABASE ALL OPEN'; END open_pdbs;
SQL> SHUTDOWN IMMEDIATE
SQL> STARTUP
SQL> show pdbs
如何使用ORACLE客户端连接LINUX ORACLE服务器
  #下载instantclient basic和sqlplus 64bit包,合并解压到D盘
  #设置环境变量
  NLS_LANG:SIMPLIFIED CHINESE_CHINA.ZHS16GBK
  TNS_ADMIN:D:\instantclient\NETWORK\ADMIN
  Path:D:\instantclient  D:\instantclient\NETWORK\ADMIN
  #在D:\instantclient\NETWORK\ADMIN新建tnsnames.ora



# tnsnames.ora Network Configuration File: #D:\app\Administrator\product\11.2.0\dbhome_1\network\admin\tnsnames.ora
# Generated by Oracle configuration tools.

BIT68 =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.66.68)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = ORCL)
)
)



  #使用sqldbx或plsql连接
  客户端连接Oracle 12c的时候,报错误:
  ORA-28040: No matching authentication protocol

问题原因:
  Oracle 12c的参数SQLNET.ALLOWED_LOGON_VERSION默认等于11。当我们使用11g JDBC之前版本的thin驱动连接的时候,就会报错。

解决方法:
  在数据库服务器上的network/admin/sqlnet.ora文件添加一行SQLNET.ALLOWED_LOGON_VERSION=8,重启数据库,重新连接数据库,可以成功连接,问题解决。

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-407269-1-1.html 上篇帖子: How to Setup MySQL (Master-Slave) Replication in CentOS 下篇帖子: CentOS下安装python3.x版本
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表