重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
1/s/1gfa3e63;这里是我在Oracle官网下载好了Windows系统64位的安装包,有2个zip文件。不想去官网找下载地址的童鞋可以直接用这个百度云盘的下载链接。1.去下载最新的oracle11g安装包的压缩文件,有2个压缩文件,都需要下载,下载完成以后需要解压缩在同一个目录下。在开始oracle数据安装之前建议:1.关闭本机的病毒防火墙。2.断开互联网。这样可以避免解压缩丢失文件和安装失败。2.我在下载好2个zip文件后,都解压在了database目录中。如下图:3.进入database双击 setup.exe 开始安装,在如下图:4.出现如下选项,选择是,继续安装。当然这是我机器出现了这个情况,可能你的满足要求了。。。5.取消勾,点击下一步:6.Oracle在进行安装的时候都会询问是否同时创建一个数据库出来,此处选择“创建和配置数据库”。7.每一个数据库可以想象为一个实例,所以此处表示只存在一个数据库的含义8.此处选择“高级安装”。9.语言现在选择支持“简体中文”和“英文”。10.选择“企业版”。11.此处设置Oracle的安装目录,将其安装到app目录下。12.选择一般事物 13.此处输入数据库的名称,同时SID与数据库的名称相同。14.使用默认配置,如下图:15.Oracle本身提供了多个操作用户,为了简单管理,所有的密码都统一设置为“oracleadmin”。随后将进行安装环境的检验,如果检验之中出现了错误,则会提示用户,或者由用户选择“忽略”。16.选择完成开始安装17.而后进入到了oracle的安装界面。此界面会运行一段时间,在此界面完成之后出现的任何界面都不要点任何的确定按钮,因为还需要进行后续的配置。18.安装完成之后会进入到配置用户口令界面,点击 用户口令 设置密码。此界面之中需要进行用户名及密码的配置,在使用Oracle数据库过程之中,主要使用三个用户(有三个用户的密码是public password,在实际中不可以使用):超级管理员:sys / change_on_install;普通管理员:system / manager;普通用户:scott / tiger,此用户需要配置解锁;19.完成之后选择“确定”那么再之后就可以进入到安装完成的界面,选择“关闭”即可。20.在Oracle安装完成之后,可以通过windows的服务找到所有与Oracle有关的服务选项。21.所有的服务建议将其全部修改为手工启动,这样电脑的启动速度可以快一些。但是有两个服务是必须启动的:OracleOraDb11g_home1TNSListener:数据库的监听服务,当使用任何的编程语言或者是前台工具连接数据库的时候,此服务必须启动,否则无法连接;OracleServiceSYNC:指的是数据库的实例服务,实例服务的命名规范“OracleServiceSID”,一般SID的名称都和数据库的名称保持一致,每一个数据库的服务都会创建一个sid。这里我的数据库的SID是sync。2. 使用sqlplus命令设置数据库1.当oracle安装完成之后,下面就需要对其进行使用,Oracle本身提供了一个“sqlplus.exe”的操作命令,直接运行此命令即可。2.此处输入用户名为scott,密码为tiger。 3.在数据库之中会存在多张数据表,那么下面发出一个查询emp表的操作命令,输入命令如下,默认的显示方式并不是特别的好,此处可以使用以下的命令更改显示方式 4.在Oracle之中会存在多种用户,如果要想切换不同的用户,可以使用如下的命令完成,如果现在使用的是sys用户登录,那么就必须加上“AS SYSDBA”表示由管理员登录,其他用户不需要。CONN 用户名/密码 [AS SYSDBA] ;范例:使用sys登录conn sys/change_on_install AS sysdba 如果要想查看当前用户输入“show user”命令即可查看。show user 5.如果说现在使用sys用户登录,并且发出同样的查询命令,会发现找不到emp表的错误提示:6.因为这张表属于scott用户,所以当使用scott用户登录的时候可以直接使用此表,但是如果换了一个用户,那么就必须使用这个表的完整名称“用户名.表名称”,emp属于scott的,所以全名是“scott.emp”。以上所述是小编给大家带来的Oracle11g数据库win8.1系统安装配置图文教程,希望对大家有所帮助,如果大家有任何疑问欢迎给我留言,小编会及时回复大家的!
创新互联建站是一家成都网站制作、做网站,提供网页设计,网站设计,网站制作,建网站,按需规划网站,网站开发公司,自2013年起是互联行业建设者,服务者。以提升客户品牌价值为核心业务,全程参与项目的网站策划设计制作,前端开发,后台程序制作以及后期项目运营并提出专业建议和思路。
批量插入数据脚本
1、第一种批量插入数据脚本,可以基本满足要求。理解上较为简单,所以这个最常用。
NEXTVAL和CURRVAL的区别:
1、如果 sequence.CURRVAL 和 sequence.NEXTVAL 都出现在一个 SQL 语句中,则序列只增加一次。在这种情况下,每个 sequence.CURRVAL 和 sequence.NEXTVAL 表达式都返回相同的值,不管在语句中sequence.CURRVAL 和 sequence.NEXTVAL 的顺序。
执行脚本结果如下:
3、两个表,同时批量插入数据的脚本
3、
4、 涉及子表时,批量插入数据脚本,
5、 批量修改数据 :
时间取数方式:
一、SYSTIMESTAMP(取当前系统值)
二、SYSDATE(取当前系统值,但只精确到时,分和秒都为0)
三、固定值为:TO_TIMESTAMP ('2019-2-12 15:24:45.703000', 'yyyy-mm-dd hh24:mi:ss.ff6')
把固定的字段改为变量:
方式一:’||i||’ 例:’{“no”:“111’||i||’”}’(此方式)
方式二:concat 例:concat(concat(’{“blNo”:111"’,i),’"}’)
#!/bin/bash
#centos oracle g 前期安装环境检查脚本
#将所需要安装的包(rpm格式)与脚本放在一个目录下
ss=$PWD
cd $ss
rpm ivh * rpm
#ORACLE_BASE=/opt/oracle
echo n 输入ORACLE_BASE(默认/opt/oracle):
read ORACLE_BASE
if [ z $ORACLE_BASE ]
then
ORACLE_BASE=/opt/oracle
fi
#ORACLE_HOME=$ORACLE_BASE/product/ /db_
echo n 输入 HOME (默认 product/ /db_ ):
read HOME
if [ z $HOME ]
then
HOME=product/ /db_
fi
ORACLE_HOME=$ORACLE_BASE/$HOME
#ORACLE_SID=oral
echo n 输入 ORACLE_SID (默认 orcl):
read ORACLE_SID
if [ z $ORACLE_SID ]
then
ORACLE_SID=orcl
fi
USER=oracle
SYSCTL=/etc/nf
LIMITS=/etc/security/nf
PAM=/etc/pam d/login
PROFILE=/etc/profile
BASH_PROFILE=/home/oracle/ bash_profile
#IPADDR=`ifconfig eth |grep inet addr |cut d : f | cut d f `
#HOSTS=/etc/hosts
#NEORK=/etc/sysconfig/neork
#hostname
#grep v HOSTNAME $NEORK $NEORK
#echo HOSTNAME=$HOSTNAME $NEORK
#echo $IPADDR $HOSTNAME $HOSTS
#加入用户
useradd g oinstall G dba $USER
groupadd oinstall
groupadd dba
mkdir p $ORACLE_BASE
chown R $USER:oinstall $ORACLE_BASE
#内核设置
cat $SYSCTL EOF
kernel msgmni=
kernel shmmni=
kernel sem=
fs file max=
net ipv ip_local_port_range=
net ipv tcp_sack=
net ipv tcp_timestamps=
net ipv tcp_max_syn_backlog=
net ipv tcp_keepalive_time=
re rmem_default=
re rmem_max=
re wmem_default=
re wmem_max=
EOF
#限制设置
cat $LIMITS EOF
oracle soft nproc
oracle hard nproc
oracle soft nofile
oracle hard nofile
EOF
#安全设置
cat $PAM EOF
session required /lib/security/pam_limits so
session required pam_limits so
EOF
#全局环境变量设置
cat $PROFILE EOF
if [ \$USER = oracle ]; then
if [ \$SHELL = /bin/ksh ]; then
ulimit p
ulimit n
else
ulimit u n
fi
fi
EOF
#oracle环境变量设置
cat $BASH_PROFILE EOF
export LC_CTYPE=en_US UTF
export ORACLE_SID=orcl
export ORACLE_BASE=/opt/oracle
export ORACLE_HOME=/opt/oracle/product/ /db_
export TNS_ADMIN=$ORACLE_HOME/neork/admin
export ORA_DB=$ORACLE_HOME/dbs
export ORACLE_BDUMP=$ORACLE_BASE/shtkt/bdump
export ORACLE_TERM=xterm
export NLS_LANG=AMERICAN_AMERICA ZHS GBK
export ORA_NLS =$ORACLE_HOME/omon/nls/admin/data
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib:/usr/local/lib
export LIBPATH=$ORACLE_HOME/lib:$ORACLE_HOME/ctx/lib
export CLASSPATH=$ORACLE_HOME/JRE/lib:$ORACLE_HOME/JRE/lib/rt jar:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib
PATH=$PATH:$HOME/bin:$ORACLE_HOME/bin
export PATH
umask
EOF
source /home/oracle/ bash_profile
sleep
export DISPLAY=:
xhost +
export LC_ALL=en_US
lishixinzhi/Article/program/Oracle/201311/18577
没必要用root权限执行,oracle用户同样可以执行crontab计划任务
1、su - oracle
crontab -e
0 4 * * 0 /home/oracle/exp.sh 21 /home/oracle/script_exp.log;
0~59 表示分
0~23 表示小时
1~31 表示日
1~12 表示月份
0~6 表示星期(其中0表示星期日)
2、cat /home/oracle/exp.sh
. ~/.bash_profile
bakdir=/opt/dbbak
logdir=/home/oracle/dbbak
rq=$(date +%Y%m%d)
exp system/***** owner=jysh file=${bakdir}/jysh_${rq}.dmp log=${logdir}/jysh_${rq}.log;
find ${bakdir} -type f -mtime +30 -exec rm -rf {} \;
用job,具体用法:
declare
n_job binary_integer;
begin
dbms_job.submit(n_job, '你要执行的东西', sysdate, TRUNC(LAST_DAY(SYSDATE))+4+2/24);
end;
-- 每月4号执行
dbms_job.submit(n_job_01,'你调的东西',sysdate,'TRUNC(LAST_DAY(SYSDATE))+4+2/24');
-- 每分钟执行一次
dbms_job.submit(n_job_01,'你调的东西',sysdate,'TRUNC(sysdate,’mi’) + 1 / (24*60)');
-- 凌晨两点执行
dbms_job.submit(n_job_01,'你调的东西',sysdate,'TRUNC(sysdate) + 1 + 2/24');
-- 每周一凌晨2点执行 周一是每周的第二天next_day(sysdate,2)同理周二是第三天,next_day(sysdate,3)
dbms_job.submit(n_job_01,'你调的东西',sysdate,'TRUNC(next_day(sysdate,2))+2/24');
-- 每月1日凌晨两点执行
dbms_job.submit(n_job_01,'你调的东西',sysdate,'TRUNC(LAST_DAY(SYSDATE))+1+2/24');
-- 每季第一天凌晨两点执行
dbms_job.submit(n_job_01,'你调的东西',sysdate,'TRUNC(ADD_MONTHS(SYSDATE,3),'Q') + 2/24');
-- 每年7月1日和1月1日凌晨2点
dbms_job.submit(n_job_01,'你调的东西',sysdate,'ADD_MONTHS(trunc(sysdate,'yyyy'),6)+2/24');
-- 每年1月1日凌晨2点执行
dbms_job.submit(n_job_01,'你调的东西',sysdate, 'Add_months(trunc(sysdate,'yyyy'), 12) +2/24');