12c数据库
创建oracle的系统用户和用户组
1 [root@localhost /]# groupadd oinstall 2 [root@localhost /]# groupadd dba 3 [root@localhost /]# groupadd oper 4 [root@localhost /]# useradd -g oinstall -G dba,oper oracle 5 [root@localhost /]# echo "root" | passwd --stdin oracle
创建oracle安装目录
1 [root@localhost home]# mkdir -p /home/app/oracle/product/12.1.0/db_1 2 [root@localhost home]# chown -R oracle:oinstall /home/app 3 [root@localhost home]# chmod -R 775 /home/app
修改内核参数
1 vim /etc/sysctl.conf 2 3 fs.aio-max-nr = 1048576 4 fs.file-max = 6815744 5 kernel.shmall = 2097152 6 kernel.shmmax = 1200000000 7 kernel.shmmni = 4096 8 kernel.sem = 250 32000 100 128 9 net.ipv4.ip_local_port_range = 9000 65500 10 net.core.rmem_default = 262144 11 net.core.rmem_max = 4194304 12 net.core.wmem_default = 262144 13 net.core.wmem_max = 1048576 14 15 #使其生效 16 [root@localhost home]# sysctl -p
修改文件限制
[root@localhost home]# vi /etc/security/limits.conf
1 oracle soft nproc 2047 2 oracle hard nproc 16384 3 oracle soft nofile 1024 4 oracle hard nofile 65536 5 oracle soft stack 10240
[root@localhost home]# vim /etc/pam.d/login 添加: session required pam_limits.so 修改ulimit:vi /etc/profile,添加: [root@localhost home]# vim /etc/profile if [ $USER = "oracle" ]; then if [ $SHELL = "/bin/ksh" ]; then ulimit -p 16384 ulimit -n 65536a else ulimit -u 16384 -n 65536 fi fi |
修改环境变量
1 [root@localhost home]# vim ~oracle/.bash_profile 2 3 ORACLE_BASE=/home/app/oracle 4 ORACLE_HOME=$ORACLE_BASE/product/12.1.0/db_1 5 ORACLE_SID=gdlisnet 6 export ORACLE_BASE ORACLE_HOME ORACLE_SID 7 PATH=$ORACLE_HOME/bin:$PATH 8 export PATH 9 export LANG=C 10 export NLS_LANG=AMERICAN_AMERICA.ZHS16GBK 11 #生效 12 [root@localhost home]# source /home/oracle/.bash_profile
安装依赖包
yum -y install binutils compat-libcap1 compat-libstdc++-33 compat-libstdc++-33*.i686 elfutils-libelf-devel gcc gcc-c++ glibc*.i686 glibc glibc-devel glibc-devel*.i686 ksh libgcc*.i686 libgcc libstdc++ libstdc++*.i686 libstdc++-devel libstdc++-devel*.i686 libaio libaio*.i686 libaio-devel libaio-devel*.i686 make sysstat unixODBC unixODBC*.i686 unixODBC-devel unixODBC-devel*.i686 libXp
关闭防火墙
systemctl stop firewalld
systemctl disable firewalld.service 重启也是禁止的
进行安装
以oracle用户登录 [oracle@localhost home]# cd /home/app/oracle [oracle@localhost oracle]# unzip linuxx64_12201_database.zip [oracle@localhost oracle]# export LANG="en_US" [oracle@localhost oracle]# cd /home/app/oracle/database [oracle@localhost oracle]# ./runInstaller 输入xhost+时候如果找不到命令需要安装 yum whatprovides "*/xhost" 按照结果yum 安装 如果报错: /usr/bin/xdpyinfo 检查是否安装 yum -y install xdpyinfo 进行安装 [oracle@localhost database]$ xhost + xhost: unable to open display "" #本机IP:192.168.10.38 [oracle@localhost database]$ export DISPLAY=192.168.10.38:0.0 [oracle@localhost database]$ xhost + access control disabled, clients can connect from any host 打开Xmanager - Passive即可调出界面
创建和配置数据库
服务器类
单实例数据库
高级安装
企业版
一般用途
设置SID和数据库名,把创建容器数据库勾去
对所有账户使用相同密码
按提示解决解决
解决交换空间问题
1 #以root用户 2 [root@localhost ~]# free -m 3 total used free shared buff/cache available 4 Mem: 1824 1239 67 9 517 410 5 Swap: 2047 0 2047 6 [root@localhost ~]# dd if=/dev/zero of=/home/swap bs=1024 count=1024000 7 记录了1024000+0 的读入 8 记录了1024000+0 的写出 9 1048576000字节(1.0 GB)已复制,3.82043 秒,274 MB/秒 10 [root@localhost ~]# mkswap /home/swap 11 正在设置交换空间版本 1,大小 = 1023996 KiB 12 无标签,UUID=d50c7ffb-96c8-40b9-8216-c535391a86f8 13 [root@localhost ~]# free -m 14 total used free shared buff/cache available 15 Mem: 1824 1074 73 2 676 576 16 Swap: 2047 253 1794 17 [root@localhost ~]# swapon /home/swap 18 [root@localhost ~]#
添加兼容版本,修改密码
注意:配置完服务器端的sqlnet.ora文件后,务必要重新修改密码,否则仍登录失败
1 [oracle@localhost database]$ vim /home/app/oracle/product/12.1.0/db_1/network/admin/sqlnet.ora 2 3 #添加如下内容 4 SQLNET.ALLOWED_LOGON_VERSION=8; 5 6 #oracle12c以上需要改密码 7 sqlplus / as sysdba 8 alter user 服务名 identified by 密码;
开放oracle相关端口
1 firewall-cmd --zone=public --add-port=1521/tcp --permanent 2 firewall-cmd --zone=public --add-port=5500/tcp --permanent 3 firewall-cmd --zone=public --add-port=5501/tcp --permanent 4 firewall-cmd --zone=public --add-port=5502/tcp --permanent 5 6 查看监听的端口 7 netstat -lnpt 8 9 查看防火墙状态 10 firewall-cmd --state 11 12 检查端口被哪个进程占用 13 netstat -lnpt |grep 1521 14 15 查看进程的详细信息 16 ps 6832 17 18 中止进程 19 kill -9 6832
设置开机自启动
1 [oracle@centos7 /]$ vim /etc/oratab 2 gdlisnet:/home/app/oracle/product/12.1.0/db_1:Y 3 [oracle@centos7 bin]$ vim /home/app/oracle/product/12.1.0/bin/dbstart 4 将ORACLE_HOME_LISTNER=$1改成 5 ORACLE_HOME_LISTNER=$ORACLE_HOME 6 [root@centos7 bin]# vim /etc/rc.local 7 su - oracle -c '/home/app/oracle/product/12.1.0/bin/lsnrctl start' 8 su - oracle -c '/home/app/oracle/product/12.1.0/bin/dbstart' 9 [root@centos7 bin]# chmod +x /etc/rc.d/rc.local
同步网络时间
[root@centos7 /]# yum -y install ntp
[root@centos7 /]# ntpdate -u ntp.api.bz
[root@centos7 /]# hwclock –w
lsnrctl status 查看状态
lsnrctl start 启动
lsnrctl stop 停止
常用命令:
sqlplus /nolog //登录sqlplus
connect /as sysdba //连接oracle
startup //起动数据库
shutdown //关闭数据库
shutdown immediate
exit //退出sqlplus