oracle11g笔记

安装

#!/bin/bash
#安装oracle110203

pageDir="/opt/tools/oracle"
bdFile="/tmp/bdFile.txt"
opassword="oracle"

check_ok(){
  if [ $? != 0 ]
  then
    echo "Error, Check the error log."
    exit 1
  fi
}

myum(){
  if ! rpm -qa|grep -q "^$1"
  then
    yum install -y $1
    check_ok
  else
    echo $1 already installed.
  fi
}

check_server(){
  if ! grep -q "$1" "$bdFile"
  then
    "$1"
  fi  
}


install_oracleinit(){
    for i in binutils compat-libstdc++-33 compat-libstdc++-33.i686 elfutils-libelf elfutils-libelf-devel gcc gcc-c++ glibc glibc.i686 glibc-common glibc-devel glibc-devel.i686 glibc-headers ksh libaio libaio.i686 libaio-devel libaio-devel.i686 libgcc libgcc.i686 libstdc++ libstdc++.i686 libstdc++-devel make sysstat unixODBC unixODBC-devel
    do
        myum $i
    done

    if ! grep -q oinstall /etc/group
    then
        /usr/sbin/groupadd oinstall
        check_ok
    fi

    if ! grep -q  dba /etc/group
    then
        /usr/sbin/groupadd dba
        check_ok
    fi

    if ! grep -q oracle /etc/passwd
    then
        /usr/sbin/useradd -g oinstall -G dba oracle
        check_ok
    fi

    if ! grep -q oracle /etc/sudoers
    then
        echo "oracle    ALL=(ALL)     NOPASSWD: ALL" >> /etc/sudoers
    fi

    echo  $opassword | passwd --stdin oracle
    cat << EOF > /etc/sysctl.conf
kernel.sem = 250 32000 100 128
fs.file-max = 6815744
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
fs.aio-max-nr = 1048576
EOF

    /sbin/sysctl -p
    check_ok

    #su oracle
    #check_ok
    if ! grep -q oracle /etc/security/limits.conf
    then
        echo "oracle    soft    nofile    1024" >> /etc/security/limits.conf
        echo "oracle    hard    nofile    65536" >> /etc/security/limits.conf
        echo "oracle    soft    nproc     2047" >> /etc/security/limits.conf
        echo "oracle    hard    nproc     16384" >> /etc/security/limits.conf
    fi

    if ! grep -q "pam_limits.so" /etc/pam.d/login
    then
        echo "session    required    /lib64/security/pam_limits.so" >> /etc/pam.d/login
        echo "session    required    pam_limits.so" >> /etc/pam.d/login
    fi

    if ! grep -q "oracle" /etc/profile/env.sh
    then
        echo "if [ \$USER == "oracle" ]; then" >> /etc/profile/env.sh
        echo "    if [ $SHELL == "/bin/ksh" ]; then" >> /etc/profile/env.sh
        echo "        ulimit -p 16384" >> /etc/profile/env.sh
        echo "        ulimit -n 65536" >> /etc/profile/env.sh
        echo "    else" >> /etc/profile/env.sh
        echo "        ulimit -u 16384 -n 65536" >> /etc/profile/env.sh
        echo "    fi" >> /etc/profile/env.sh
        echo "fi" >> /etc/profile/env.sh
    fi

    #close selinux
    #sed -i 's/SELINUX=enforcing/SELINUX=disabled/' /etc/selinux/config
    #selinux_s=`getenforce`
    #if [ $selinux_s == "Enforcing"  -o $selinux_s == "enforcing" ]
    #then
    #    setenforce 0
    #fi
    #
    
    [ -f /etc/oraInst.loc ] || touch /etc/oraInst.loc
      cat << EOF > /etc/oraInst.loc
inventory_loc=/opt/oracle/oraInventory
inst_group=oinstall
EOF
    chown oracle:oinstall /etc/oraInst.loc
    chmod 664 /etc/oraInst.loc

    echo "install_oracleinit ok"
    echo "install_oracleinit" >> $bdFile
}

install_oracle11g(){

    #u=`whoami`
    #[ "$u" == "root" ] || su root
    #check_ok
    [ -d /opt/oracle ] || mkdir -p /opt/oracle
    chown -R oracle:oinstall /opt/oracle/
    chmod -R 775 /opt/oracle/

      
      #u=`whoami`
      #[ "$u" == "oracle" ] || su oracle

      if ! grep -q "ORACLE_BASE" /home/oracle/.bash_profile
      then
          echo "umask 022" >> /home/oracle/.bash_profile
          echo "export ORACLE_BASE=/opt/oracle" >> /home/oracle/.bash_profile
          echo "export ORACLE_SID=orcl" >> /home/oracle/.bash_profile
          echo "export ORACLE_HOME=\$ORACLE_BASE/product/11.2.0/db_1" >> /home/oracle/.bash_profile
        echo "export TNS_ADMIN=\$ORACLE_HOME/network/admin" >> /home/oracle/.bash_profile
        echo "export PATH=.:\${PATH}:\$HOME/bin:\$ORACLE_HOME/bin" >> /home/oracle/.bash_profile
        echo "export PATH=\${PATH}:/usr/bin:/bin:/usr/bin/X11:/usr/local/bin" >> /home/oracle/.bash_profile
        echo "export LD_LIBRARY_PATH=\${LD_LIBRARY_PATH}:\$ORACLE_HOME/lib" >> /home/oracle/.bash_profile
        echo "export LD_LIBRARY_PATH=\${LD_LIBRARY_PATH}:\$ORACLE_HOME/oracm/lib" >> /home/oracle/.bash_profile
        echo "export LD_LIBRARY_PATH=\${LD_LIBRARY_PATH}:/lib:/usr/lib:/usr/local/lib" >> /home/oracle/.bash_profile
        echo "export CLASSPATH=\${CLASSPATH}:\$ORACLE_HOME/JRE" >> /home/oracle/.bash_profile
        echo "export CLASSPATH=\${CLASSPATH}:\$ORACLE_HOME/JRE/lib" >> /home/oracle/.bash_profile
        echo "export CLASSPATH=\${CLASSPATH}:\$ORACLE_HOME/jlib" >> /home/oracle/.bash_profile
        echo "export CLASSPATH=\${CLASSPATH}:\$ORACLE_HOME/rdbms/jlib" >> /home/oracle/.bash_profile
        echo "export CLASSPATH=\${CLASSPATH}:\$ORACLE_HOME/network/jlib" >> /home/oracle/.bash_profile
        echo "export LIBPATH=\${CLASSPATH}:\$ORACLE_HOME/lib:\$ORACLE_HOME/ctx/lib" >> /home/oracle/.bash_profile
        echo "export ORACLE_OWNER=oracle" >> /home/oracle/.bash_profile
        echo "export SPFILE_PATH=\$ORACLE_HOME/dbs" >> /home/oracle/.bash_profile
        echo "export ORA_NLS10=\$ORACLE_HOME/nls/data" >> /home/oracle/.bash_profile
      fi    

      source /home/oracle/.bash_profile
      check_ok

      
      

    [ -d /home/oracle/etc ] || mkdir -p /home/oracle/etc
    [ -f /home/oracle/etc/db_install.rsp ] || touch /home/oracle/etc/db_install.rsp
    cat << EOF > /home/oracle/etc/db_install.rsp
oracle.install.responseFileVersion=/oracle/install/rspfmt_dbinstall_response_schema_v11_2_0
oracle.install.option=INSTALL_DB_SWONLY
ORACLE_HOSTNAME=`hostname`
UNIX_GROUP_NAME=oinstall
INVENTORY_LOCATION=/opt/oracle/oraInventory
SELECTED_LANGUAGES=en,zh_CN,zh_TW
ORACLE_HOME=/opt/oracle/product/11.2.0/db_1
ORACLE_BASE=/opt/oracle
oracle.install.db.InstallEdition=EE
oracle.install.db.EEOptionsSelection=false
oracle.install.db.optionalComponents=oracle.rdbms.partitioning:11.2.0.3.0,oracle.oraolap:11.2.0.3.0,oracle.rdbms.dm:11.2.0.3.0,oracle.rdbms.dv:11.2.0.3.0,oracle.rdbms.lbac:11.2.0.3.0,oracle.rdbms.rat:11.2.0.3.0
oracle.install.db.DBA_GROUP=dba
oracle.install.db.OPER_GROUP=oinstall
oracle.install.db.CLUSTER_NODES=
oracle.install.db.isRACOneInstall=
oracle.install.db.racOneServiceName=
oracle.install.db.config.starterdb.type=GENERAL_PURPOSE
oracle.install.db.config.starterdb.globalDBName=orcl
oracle.install.db.config.starterdb.SID=orcl
oracle.install.db.config.starterdb.characterSet=AL32UTF8
oracle.install.db.config.starterdb.memoryOption=true
oracle.install.db.config.starterdb.memoryLimit=512
oracle.install.db.config.starterdb.installExampleSchemas=false
oracle.install.db.config.starterdb.enableSecuritySettings=true
oracle.install.db.config.starterdb.password.ALL=oracle
oracle.install.db.config.starterdb.password.SYS=oracle
oracle.install.db.config.starterdb.password.SYSTEM=oracle
oracle.install.db.config.starterdb.password.SYSMAN=
oracle.install.db.config.starterdb.password.DBSNMP=
oracle.install.db.config.starterdb.control=DB_CONTROL
oracle.install.db.config.starterdb.gridcontrol.gridControlServiceURL=
oracle.install.db.config.starterdb.automatedBackup.enable=false
oracle.install.db.config.starterdb.automatedBackup.osuid=
oracle.install.db.config.starterdb.automatedBackup.ospwd=
oracle.install.db.config.starterdb.storageType=
oracle.install.db.config.starterdb.fileSystemStorage.dataLocation=
oracle.install.db.config.starterdb.fileSystemStorage.recoveryLocation=
oracle.install.db.config.asm.diskGroup=
oracle.install.db.config.asm.ASMSNMPPassword=
MYORACLESUPPORT_USERNAME=
MYORACLESUPPORT_PASSWORD=
SECURITY_UPDATES_VIA_MYORACLESUPPORT=false
DECLINE_SECURITY_UPDATES=true
PROXY_HOST=
PROXY_PORT=
PROXY_USER=
PROXY_PWD=
PROXY_REALM=
COLLECTOR_SUPPORTHUB_URL=
oracle.installer.autoupdates.option=
oracle.installer.autoupdates.downloadUpdatesLoc=
AUTOUPDATES_MYORACLESUPPORT_USERNAME=
AUTOUPDATES_MYORACLESUPPORT_PASSWORD=
EOF
    
    chown -R oracle:oinstall /home/oracle
    chmod 700 /home/oracle/etc/*.rsp

    cd $pageDir
      #[ -f linux.x64_11gR2_database_1of2.zip ] || (echo "not linux.x64_11gR2_database_1of2.zip file..";exit 1)
      #[ -f linux.x64_11gR2_database_2of2.zip ] || (echo "not linux.x64_11gR2_database_2of2.zip file..";exit 1)
      [ -f p10404530_112030_Linux-x86-64_1of7.zip ] || (echo "not p10404530_112030_Linux-x86-64_1of7.zip file..";exit 1)
      [ -f p10404530_112030_Linux-x86-64_2of7.zip ] || (echo "not p10404530_112030_Linux-x86-64_2of7.zip file..";exit 1)
      if [ ! -d database ]
    then
        unzip p10404530_112030_Linux-x86-64_1of7.zip
        check_ok
        unzip p10404530_112030_Linux-x86-64_2of7.zip
        check_ok
    fi
    cd database
    su -l -c "$pageDir/database/runInstaller -silent -force -responseFile /home/oracle/etc/db_install.rsp" oracle
    check_ok
    /opt/oracle/product/11.2.0/db_1/root.sh
    check_ok

    echo "install_oracle11g" >>  "$bdFile"
    echo "install_oracle11g install ok"  

}


install_oracle11g_db(){

    [ -f /home/oracle/etc/dbca.rsp ] || touch /home/oracle/etc/dbca.rsp
    cat << EOF > /home/oracle/etc/dbca.rsp
[GENERAL]
RESPONSEFILE_VERSION = "11.2.0"
OPERATION_TYPE = "createDatabase"
[CREATEDATABASE]
GDBNAME = "orcl" 
SID = "orcl"
TEMPLATENAME = "General_Purpose.dbc"
SYSPASSWORD = "oracle"
SYSTEMPASSWORD = "oracle"
DATAFILEDESTINATION = "/opt/oracle/oradata"
RECOVERYAREADESTINATION = "/opt/oracle/flash_recovery_area"
CHARACTERSET = "AL32UTF8"
NATIONALCHARACTERSET= "UTF8"
EOF
    chown -R oracle:oinstall /home/oracle
    chmod 700 /home/oracle/etc/*.rsp

    su -l -c " /opt/oracle/product/11.2.0/db_1/bin/dbca -silent -responseFile /home/oracle/etc/dbca.rsp" oracle
    check_ok
    echo "install_oracle11g_db" >>  "$bdFile"
    echo "install_oracle11g_db install ok"  
}




check_server install_oracleinit
check_server install_oracle11g
check_server install_oracle11g_db

 oracle启动脚本

#!/bin/bash
#
. /etc/init.d/functions
oracle_home=/opt/oracle/product/11.2.0/db_1
oracle_bin=$oracle_home/bin
function_start_oracle()
{
    printf "Starting oracle...\n"
    $oracle_bin/lsnrctl start 2>&1 > /dev/null &
export ORACLE_SID=orcl
    $oracle_bin/sqlplus /nolog <<EOF
    conn / as sysdba
    startup
    exit
EOF

}
function_stop_oracle()
{
    printf "Stoping oracle...\n"
    $oracle_bin/lsnrctl stop 2>&1 > /dev/null &
export ORACLE_SID=orcl
    $oracle_bin/sqlplus /nolog <<EOF
    conn / as sysdba
    shutdown immediate;
    #shutdown abort; #强制关机
    exit
EOF
}
function_restart_oracle()
{
    printf "Restarting oracle...\n"
    function_stop_oracle
    sleep 5
    function_start_oracle
}
if [ "$1" = "start" ]; then
    function_start_oracle
elif [ "$1" = "stop" ]; then
    function_stop_oracle
elif [ "$1" = "restart" ]; then
    function_restart_oracle
else
    printf "Usage: {start|stop|restart}\n"
fi

 oracle启动监听

stop , start ,status, reload
/opt/oracle/product/11.2.0/db_1/bin/lsnrctl start

 oracle监听配置

/opt/oracle/product/11.2.0/db_1/network/admin/listener.ora
======================================
SID_LIST_LISTENER =
(SID_LIST =
    (SID_DESC =
      (SID_NAME = orcl)
      (ORACLE_HOME = /opt/oracle/product/11.2.0/db_1)
      #(PROGRAM = extproc) #注释掉这里才能远程连接
    )
)
LISTENER =
(DESCRIPTION_LIST =
    (DESCRIPTION =
      (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1))
      (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.55.35)(PORT = 1521))
    )
)
LOGGING_LISTENER = ON
INBOUND_CONNECT_TIMEOUT_LISTENER = 0
SUBSCRIBE_FOR_NODE_DOWN_EVENT = OFF
SUBSCRIBE_FOR_NODE_DOWN_EVENT_LISTENER = OFF
======================================
/opt/oracle/product/11.2.0/db_1/network/admin/sqlnet.ora
======================================
# sqlnet.ora Network Configuration File: /home/oracle/10g/product/10.2.0/db_1/network/admin/sqlnet.ora
# Generated by Oracle configuration tools.
NAMES.DIRECTORY_PATH=(TNSNAMES, EZCONNECT)
TCP.VALIDNODE_CHECKING=YES
tcp.invited_nodes=(127.0.0.1,192.168.55.0/24,192.168.66.0/24)  #白名单
SQLNET.INBOUND_CONNECT_TIMEOUT=0
======================================

 oracle常用命令

创建用启登陆
create user ceshi identified by 123456 ; 
grant connect to ceshi;
grant sysdba to ceshi;
grant resource to ceshi;
select * from v$pwfile_users;


#查看用户默认表空间(用户名要大写)
select username,default_tablespace from dba_users where username='H3W4JEBZ' 

 #修改用户默认表空间
alter user HXH default tablespace system

#查看有哪些表空间
select tablespace_name from dba_tablespaces; 

#查看用户有哪些表
select * from all_tables where owner='H3W4JEBZ'; 

#查看表空间有哪些表
select * from all_tables where tablespace_name='USERS' 

#查看表空间的数据文件
select * from dba_data_files where tablespace_name='OA_COUNTS15'

#创建表空间
create tablespace CESHI datafile '/opt/oracle/oradata/orcl/ceshi01.dbf' size 500m autoextend on next 500m maxsize 20480m uniform size 128k; 

#删除所有表
select 'DROP TABLE H3W4JEBZ.' ||  TABLE_NAME || ';'   from all_tables  where owner='H3W4JEBZ'

#删除表空间及数据
drop tablespace OA_COUNTS15 including contents and datafiles;

#删除用户及用户创建的表
drop user AJT9C4F2 cascade;

 oracle备份

oracle恢复

navicat premium连接oracle

原文地址:https://www.cnblogs.com/mkdlf/p/6611016.html

1. D:\share\src\oracle\instantclient_10_2好用.7z  解压

2.配置 工具==选项==oci 

 

3.创建连接

猜你喜欢

转载自www.cnblogs.com/hanxiaohui/p/9134831.html