一、Oracle 数据库/客户端安装方法介绍

Oracle Instant Client(即时客户端) 安装与配置:https://blog.csdn.net/lanchengxiaoxiao/article/details/39251947

Oracle 11G Client 客户端安装步骤:https://blog.csdn.net/lanchengxiaoxiao/article/details/39251947

Oracle 11g数据库详细安装步骤:https://blog.csdn.net/projectNo/article/details/76533921(先卸载客户端再安装服务器,服务器自带客户端连接工具)

Oracle Net Manager 服务命名配置:https://www.cnblogs.com/kane1990/p/OracleNetManager.html

二、Window 7 x64 电脑上安装 64 位 Oracle 服务器后,出现的问题 

问题1:用 PL/SQL Developer 连接 Oracle 时提示 “SQL*Net not properly installed” 错误

问题原因:PL/SQL Developer 是32位程序,如果安装了 Oracle x64,则无法连接。此时需要添加 Oracle x32 相关的文件到数据库安装目录下。

解决方法:

1、在Oracle官网下载32位的客户端

由于PL/SQL是32位的,所以要用32位的客户端,且版本最好能对应(我的版本:11.2.0.1.0)

地址:http://www.oracle.com/technetwork/database/features/instant-client/index-097480.html

下载完成后,将客户端压缩包直接解压到 oracle 11g 的安装目录中的product目录下面(如:D:\app\wzl\product\11.2.0,客户端解压就行了,不用点执行文件安装),目录名默认就行(如:instantclient_11_2)

完整目录:D:\app\wzl\product\11.2.0\instantclient_11_2

将oracle 11g 的安装目录中 dbhome_1\NETWORK\ADMIN 下面的 tnsnames.ora、LISTENER.ORA 复制到 D:\app\wzl\product\11.2.0\instantclient_11_2 下

完整的 listener.ora 文件的内容如下:

SID_LIST_LISTENER =

(SID_LIST =
    (SID_DESC =
      (SID_NAME = PLSExtProc)
      (ORACLE_HOME = D:\app\wzl\product\11.2.0\db)
      (PROGRAM = extproc)
    )
   (SID_DESC =
       (GLOBAL_DBNAME = ORACLE)
       (ORACLE_HOME = D:\app\wzl\product\11.2.0\db)   
       (SID_NAME = orcl)
      )
  )

LISTENER =
  (DESCRIPTION_LIST =
    (DESCRIPTION =
      (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1))
    )
    (DESCRIPTION =
      (ADDRESS = (PROTOCOL = TCP)(HOST = 172.16.18.2)(PORT = 1521))
    )
  )

完整的 tnsnames.ora 文件的内容如下:

ORCL =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.20.162)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = orcl)
)
)

2、配置 PLSQL Developer

点击工具→首选项→连接,把“Oracle 主目录名”设置为空,并把 “OCI 库” 设置为instantclient 目录中的 oci.dll 的路径,我的路径是 D:\app\wzl\product\11.2.0\instantclient_11_2\oci.dll

3、PLSQL Developer 的目录中创建start.bat文件。

以下是start.bat的内容:

@echo off 
set path=D:\app\wzl\product\11.2.0\instantclient_11_2
set ORACLE_HOME=D:\app\wzl\product\11.2.0\instantclient_11_2
set TNS_ADMIN=D:\app\wzl\product\11.2.0\dbhome_1\NETWORK\ADMIN
set NLS_LANG=AMERICAN_AMERICA.ZHS16GBK
start plsqldev.exe

其中 set NLS_LANG=AMERICAN_AMERICA.ZHS16GBK 的 ZHS16GBK 是你的数据库编码

问题二:C# 程序通过 OLEDB 连接数据库失败,提示 “未在本地计算机注册“OraOLEDB.Oracle.1”提供程序”

问题原因:C# 程序应该也是只支持 32 位的 OraOLEDB 数据提供程序

解决方法1
重新注册一下ORAOLEDB.dll,管理员方式打开dos命令窗口,输入:
regsvr32 “D:\app\wzl\product\11.2.0\instantclient_11_2\BIN\OraOledb11.dll”

解决方法2
1.下载 ODAC112030Xcopy_32bit(根据自己的情况选择对应版本) 
32 位 Oracle Data Access Components (ODAC) 下载地址

2.解压后安装:
install.bat oledb D:\app\wzl\product\11.2.0\oracle odac

3.添加系统环境变量 path:
D:\app\wzl\product\11.2.0\oracle;
D:\app\wzl\product\11.2.0\oracle\bin;

原文链接:https://blog.csdn.net/junoohoome/article/details/79391482

附加:

一、创建物化视图

--新建表空间
CREATE TABLESPACE MLOG_TBS
LOGGING
DATAFILE 'mlog_tbs.dbf'
SIZE 32M
AUTOEXTEND ON
NEXT 32M
MAXSIZE 2048M
EXTENT MANAGEMENT LOCAL; --新建物化视图对应的日志表(用于增量同步源表的数据)
CREATE MATERIALIZED VIEW LOG ON UCADM.M_CARD
TABLESPACE MLOG_TBS
WITH PRIMARY KEY; --新建物化视图
CREATE MATERIALIZED VIEW UCADM.VIEW_M_CARD
REFRESH force ON DEMAND
START WITH TO_DATE('15-12-2017 12:00:00', 'dd-mm-yyyy hh24:mi:ss') next trunc(sysdate+1) + 1/24*6;
AS
SELECT
t.CARDID AS CARDID,
t.EMPLOYEEID AS EMPLOYEEID,
t.EMPLOYEENO AS EMPLOYEENO
FROM UCADM.M_CARD t; --修改物化视图
alter materialized view UCADM.VIEW_M_CARD
refresh force on demand
start with to_date('15-12-2017 12:00:00', 'dd-mm-yyyy hh24:mi:ss') next trunc(sysdate+1) + 1/24; --手动刷新物化视图
exec dbms_mview.refresh('VIEW_M_CARD')
close dbms_refresh ; --创建存储过程来刷新物化视图
CREATE OR REPLACE PROCEDURE SP_REFRESH_EMPLOYEE
AS
BEGIN
DBMS_REFRESH.refresh('UCADM.VIEW_M_CARD');
END SP_REFRESH_EMPLOYEE; --注意:不能通过触发器来刷新物化视图

二、创建用户

--Alter the user's password
ALTER USER 用户名 IDENTIFIED BY 新密码 --Alter the user's password when login
--ALTER USER UCADM PASSWORD EXPIRE; --Create new tablespace
CREATE TABLESPACE 新用户名
DATAFILE '新文件名.dat'
SIZE 8M AUTOEXTEND ON; -- Create the user
CREATE USER 新用户名
IDENTIFIED BY 新密码
DEFAULT TABLESPACE HFXFYKT
QUOTA UNLIMITED ON HFXFYKT
TEMPORARY TABLESPACE TEMP
QUOTA UNLIMITED ON SYSTEM
PROFILE DEFAULT;
-- PASSWORD EXPIRE;
-- Grant/Revoke role privileges
GRANT CONNECT TO HFXFYKT;
-- Grant/Revoke object privileges
GRANT SELECT, INSERT ON 表名1 TO 新用户名;

Oracle 参考脚本的更多相关文章

  1. Oracle数据库脚本中的set define off

    2018年8月6日15:11:34 Oracle数据库脚本中的set define off 前言 最近在公司写需求,接触到脚本,第一句set define off;就不知道什么意思了,查询后记录之. ...

  2. Oracle巡检脚本:ORAWatcher.sh

    Oracle巡检脚本:ORAWatcher.sh #!/usr/bin/ksh echo "" echo "ORAWatcher Version:1.0.1" ...

  3. linux手动或者自动启动oracle11g的服务 Oracle 自动启动脚本

    手动启动: [oracle@localhost ~]$ sqlplus SQL*Plus: Release 11.2.0.1.0 Production on Wed Mar 26 23:39:52 2 ...

  4. oracle优化脚本

    oracle优化脚本 --查看PGA的最佳设计建议SQL语句select PGA_TARGET_FOR_ESTIMATE / 1024 / 1024 PGAMB,       PGA_TARGET_F ...

  5. Oracle简单脚本演示样例

    Oracle简单脚本演示样例 1.添加表 --改动日期:2014.09.21 --改动人:易小群 --改动内容:新增採购支付情况表 DECLARE VC_STR           VARCHAR2( ...

  6. oracle 常用脚本以及语句

    oracle 常用脚本以及语句 一.oracle 安装10G 单机初始化环境: #!/bin/bash #关闭selinuxsed -i 's\SELINUX=enforcing\SELINUX=di ...

  7. Oracle运行脚本:exp,hist 和 err

    上一篇我们讲到:首次使用rman备份数据库时,为了安全起见,我们应将整个数据库exp出来. 显而易见,每次都手敲exp代码是不可取的. ----费时费力还不规范! 为此,我们可以写一个exp脚本,之后 ...

  8. SQL server 表结构转Oracle SQL脚本

    SQL server 表结构转Oracle SQL脚本 /****** Object: StoredProcedure [dbo].[getOracle] Script Date: 2019/7/25 ...

  9. Oracle SQL 脚本跟踪

    NC Oracle SQL 脚本跟踪 脚本: select * from v$sqlarea a and a.LAST_ACTIVE_TIME >= to_date( '2013-02-21 1 ...

随机推荐

  1. 「CodePlus 2017 11 月赛」Yazid 的新生舞会

    n<=500000的数字,问有多少个区间的众数出现次数严格大于区间长度的一半. 这么说来一个区间就一个众数了,所以第一反应是枚举数字,对下标进行处理.然后没有第二反应.很好. 在枚举一个数字的时 ...

  2. 一个1x1px大小Data/Base64数据的gif透明图片

    <img src="data:image/gif;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAADUlEQVQImWNg ...

  3. pc3-12800

    PC3-12800=DDR3 1600 PC3代表DDR3.12800是用带宽来命名,1600*64/8=12800,1600是DDR等效频率.

  4. Array.prototype.map()方法详解

    Array.prototype.map() 1 语法 const new_array = arr.map(callback[, thisArg]) 2 简单栗子 let arr = [1, 5, 10 ...

  5. 条款三:尽量用new和delete而不用malloc和free

    malloc和free(及其变体)会产生问题的原因在于它们太简单:他们不知道构造函数和析构函数. 假设用两种方法给一个包含10个string对象的数组分配空间,一个用malloc,另一个用new: s ...

  6. Centos7 samba 匿名共享 简单config

    安装Samba yum install samba samba-client samba-common -y 备份原始的Samba配置文件: mv /etc/samba/smb.conf /etc/s ...

  7. 静态链表的C++实现

    静态链表是使用数组实现的能够高速插入和删除数据的链表,静态链表和链式单链表比的缺点在于链表的长度仅仅能初始化设置好,而相相应普通的顺序存储的链表,静态链表不能实现高速的读写随意的元素. 当然静态链表给 ...

  8. 使用shell分页读取600万+的MySQL数据脚本

    shell-mysql 脚本背景 因为要在Linux上.远程读取mysql的表的数据,然后做一定清洗后.把数据上传至Hadoop集群中,使用Java写吧,感觉太麻烦了.得在Win上开发好,还得打成ja ...

  9. HDU 4869 Turn the pokers (2014多校联合训练第一场1009) 解题报告(维护区间 + 组合数)

    Turn the pokers Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) ...

  10. Hadoop之——HBASE结合MapReduce批量导入数据

    转载请注明出处:http://blog.csdn.net/l1028386804/article/details/46463889 废话不多说.直接上代码,你懂得 package hbase; imp ...