Windows下安装Oracle19C

官网下载oracle19c 以及客户端

官网地址:Software Download | Oracle

 

这个是要登录账号的,没有的可以注册,登录上

这个时候在点开这个官网:Database Software Downloads | Oracle

往下面滑

点了之后有个界面注意事项勾上,点下载,你就会下载:

安装oracle19c

解压安装压缩包

在D盘新建文件夹oracle19c(注意:解压后的安装包不能为中文路径、空格等,且数据库安装完成后安装包也不能删除。)。

将WINDOWS.X64_193000_db_home.zip解压到此文件夹下,(由于解压的安装包中已经包含客户端等,所以我就直接解压到这了,没有另建个文件夹)

(另外,在安装过程中会提示"为了更好的性能,表空间存放位置和oracle安装位置最好不要在同一个磁盘")

双击setup.exe安装

我这类装的是桌面类,如果是生产服务器应该选择服务类,另外win7不兼容oracle19c

 

安装完成,但这次安装后在开始菜单竟然找不到安装的东西,如下图。

幸好我其他机器安装过,通过查找快捷方式地址找到了位置,如图:

C:\ProgramData\Microsoft\Windows\Start Menu\Programs\Oracle - OraDB19Home1\配置和移植工具

通过这个可知,安装完oracle19c后,本机不需要再额外安装客户端,已经安装好了(且客户端相关文件就在解压缩的安装包里,所以第一步解压缩时我才没有解压到单独文件夹)。

配置

配置服务

点击Net Manager后弹窗如下,然后添加服务:

 

上面的7步,其实就是对tnsnames.ora配置文件的可视化操作而已,所以可直接修改配置文件即可完成上面的7步(连接测试除外)。

配置数据库可ip连接

此时此数据库只能本机用localhost连接,如改为本机或其他机器用ip地址连接会报无监听错误。

修改监听配置 

1.
上面的这步其实就是对 listener.ora 配置文件的可视化操作而已,所以可直接修改配置文件即可完成上面的配置,如下图。

测试

 安装PLSQL

解压PLSQL13.0.4.1906.rar,按照安装包里的path.docx文件内容指示安装,安装好后,即可直接使用。

针对本机不安装oracle数据库,远程连接其他数据库

本机未安装oracle,故需要安装客户端。

解压下载好的客户端文件压缩包 WINDOWS.X64_193000_client.zip

然后点击setup.exe安装,下图选择“管理员”吧,”即时客户机“”安装后,没有可视化管理,全点手工配置配置文件才得。(安装好后,按照步骤三下的步骤一配置服务,然后按照“步骤四”安装PLSQL就可以了)

 另外,安装客户端,客户端是不需要监听的(因为这个我搞了好久呀),在客户端使用PLSQL登录,只要服务端服务器上配置并启用了监听,客户端只需配置服务名即可 。(使用PLSQL登录报 无监听指的是服务端监听没弄好)

 另外,我在客户端的Net Manager配置服务,检测连接成功,但启动PLSQL连接时报如下错误。

 跟我差不多的问题,按描述检测后依然不得。最终发现是因为我的服务命名用了中文导致的,果断将中文改掉ok了(我是因为在Net Manager配置检测连接成功才认为中文可以的,谁知道在plsql这出问题了)。

 过程中遇到问题思考

1.Oracle19c与win7以下(包括win7)不兼容(不能安装。我在win7系统安装oracle19c数据库后怎么也不行,后来查网才知道)。

2.解压“WINDOWS.X64_193000_db_home.zip”。

注意:解压后的安装包不能为中文路径,且不要有空格这台特殊的,且数据库安装完成后安装包也不能删除。

原因是安装包里包含客户端相关文件,以及安装后的服务实例、监听等的可执行文件都在安装包里。

 3.安装客户端

注意:如果本机已经安装了oracle19c,那么本机想用plsql连接数据库就不需要再安装这个客户端(安装了也没事,就是修改配置时点看好哪个生效了),原因是安装了oracle19c后,其安装包里就有了客户端。

我就是安装完oracle19c后,本机又安装了个客户端,然后修改客户端的配置,怎么也不生效,如下图:

故结论:如本机已安装oracle19c了,就不需要安装此客户端(安装oracle19c自带了),如本机未安装Oralce,而是仅仅远程连接其他oracle服务器的话,就需要先安装客户端才能远程连接oracle数据库,再安装PLSQL工具。

 4.oracle安装后,其他机器客户端安装好后,无法通过ip地址远程连接到此oracle数据。解决方法可看上面的“安装步骤三下面的步骤2“,当时解决此问题参考的网上方法截图如下:

oracle自动备份压缩,定期删除

windows下采用创建bat脚本文件的方法(如下),然后再配置windows计划任务定时执行即可

@echo off   
echo ================================================   
echo  Windows环境下Oracle数据库的自动备份脚本  
echo  1. 使用当前日期命名备份文件。  
echo  2. 自动删除365天前的备份。  
echo ================================================  
::以“YYYYMMDD_hhmmss”格式取出当前时间。  
set BACKUPDATE=%date:~0,4%%date:~5,2%%date:~8,2%_%time:~0,2%%time:~3,2%%time:~6,2%
::设置用户名、密码和要备份的数据库。(这里注意信息后面不能带有空格)
set IP=179.21.10.888
set USER=dgc
set PASSWORD=123456
set DATABASE=ORCL
::创建备份目录。  
if not exist "E:\oracleBackup\data"       mkdir E:\oracleBackup\data
if not exist "E:\oracleBackup\log"        mkdir E:\oracleBackup\log
set DATADIR=E:\oracleBackup\data
set LOGDIR=E:\oracleBackup\log
exp %USER%/%PASSWORD%@%IP%/%DATABASE%  file=%DATADIR%\data_%BACKUPDATE%.dmp owner(%USER%) log=%LOGDIR%\log_%BACKUPDATE%.log 
::进行文件压缩(可将在program Files里安装好的WinRAR.exe复制粘贴到System32路径下)
"C:\Windows\System32\WinRAR.exe" m -r -ep1 "%DATADIR%\data_%BACKUPDATE%.rar" "%DATADIR%\data_%BACKUPDATE%.dmp"
::删除365天前的备份。  
forfiles /p "%DATADIR%" /s /m *.* /d -365 /c "cmd /c del @path"  
forfiles /p "%LOGDIR%" /s /m *.* /d -365 /c "cmd /c del @path"  
exit

结果如下:

数据库初始化操作

--创建临时表空间(这里可以不建,直接用系统默认的临时表空间temp)
 create temporary tablespace dgc_temp
  tempfile 'E:\oracle\oradata\ORCL\dgc_temp.dbf' ----存储地址
  size 100m    --初始大小
  autoextend on  next 100m maxsize 20480m --每次扩展大小,最大存储大小(无限制扩展 unlimited)
  extent management local;

 --创建用户表空间
 create tablespace dgc_ods
  logging
  datafile 'E:\oracle\oradata\ORCL\dgc_ods.dbf'
  size 1024m
  autoextend on next 100m  MAXSIZE UNLIMITED
  extent management local;

--创建用户 
 create user dgc_ods profile default identified by Dgc2022#$ods
default  tablespace dgc_ods
temporary tablespace dgc_temp
account unlock;
--赋权限
grant connect,resource,dba to dgc_ods;
--查看表空间使用情况
SELECT a.tablespace_name "表空间名",   
       total / 1024 / 1024 "表空间大小(M)",   
       free / 1024 / 1024 "表空间剩余大小(M)",   
       (total - free) / 1024 / 1024 "表空间使用大小(M)",   
       ROUND((total - free) / total, 4) * 100 "使用率   %"  
  FROM (SELECT tablespace_name, SUM(bytes) free  
          FROM DBA_FREE_SPACE   
         GROUP BY tablespace_name) a,   
       (SELECT tablespace_name, SUM(bytes) total   
          FROM DBA_DATA_FILES   
         GROUP BY tablespace_name) b   
 WHERE a.tablespace_name = b.tablespace_name;

数据库导入导出

方式一:do窗口执行(cmd打开dos窗口):

--如为dos环境,需要cmd打开dos窗口,运行命令如下
sqlplus /nolog
conn /as sysdba

--导入前先删除用户
  drop user bds cascade;

--如有链接查询数据库链接,执行查询出的结果(删除用户时报有链接时可用此方法删除数据库链接) 
  select 'Alter system kill session ' || chr(39) || sid || ',' || serial# ||chr(39) || ' IMMEDIATE;' from v$session  where username='BDS';--‘’里的用户为大写字母

--创建用户(表空间为nsofttest 临时表空间为temp)
   create user bds profile default identified by bdstest
    default   tablespace bds
    temporary tablespace temp
    account unlock;
--赋权限
  grant alter any index to bds;
  grant create any index to bds;
  grant create procedure to bds;
  grant create any view  to bds;
  grant drop any index to bds;
  grant drop any view to bds;
  grant connect to bds; 
  grant dba to bds;
  commit;

--执行完sql语句后,执行导入操作
--导入<dos窗口 2次exit退出sql后,cd进入备份文件所在路径,再执行下面操作>
imp bds/bdstest@ORCL file=110221.dmp fromuser=bdsdata  touser=bds   ignore=y rows=y full=y
<ignore=y 忽略创建错误(默认n);; rows=n不带数据,即只倒表结构等(默认为y,带数据行) full=y导入整个文件(默认n)>
--导出操作(dos窗口执行)
exp bds/bdstest@ORCL file=E:/oracle/imp_data/auto_cpf_2010_0922_0850.dmp  log=E:/oracle/imp_data/auto_cpf_2010_0922_0850.log
--查询当前用户数据表及数据量
SELECT '--'||b.comments||'--数据总量:'|| T.NUM_ROWS||'条',chr(10)||
'select * from '||T.TABLE_NAME||';' FROM USER_TABLES T,user_tab_comments b
where t.TABLE_NAME=b.table_name and T.NUM_ROWS!=0
order by  T.NUM_ROWS desc;

导入导出相关参数详解:https://blog.csdn.net/tian830937/article/details/130567938
--导入导出举例(注意:exp和imp 是在dos提示符下执行,即直接cmd后dos窗口执行而不是在sql下执行)
nohup exp bds/bdstest@ORCL file=./OB_OPERATIONLOG20081231.dmp tables=OB_OPERATIONLOG query=\" where dtinput\<=to_date\(\'20090101\',\'yyyymmdd\'\)  \"
nohup imp bds/bdstest@ORCL file=./OB_OPERATIONLOG20081231.dmp tables=OB_OPERATIONLOG fromuser=bdsdata touser=bds ignore=y

exp bds/bdstest@ORCL file=./CPFLOG20081231.dmp tables=CPFLOG query=\" where dtinput\<to_date\(\'20090101\',\'yyyymmdd\'\)  \"
imp bds/bdstest@ORCL file=./CPFLOG20081231.dmp tables=CPFLOG fromuser=bdsdata touser=bds ignore=y

exp bds/bdstest@ORCL file=./CPFLOG20090113.dmp tables=CPFLOG query=\" where dtinput\>=to_date\(\'20090101\',\'yyyymmdd\'\)  \"
imp bds/bdstest@ORCL file=./CPFLOG20090113.dmp tables=CPFLOG fromuser=bdsdata touser=bds ignore=y

exp bds/bdstest@ORCL file=./CPFLOG20091222.dmp tables=accountinfo query=\" where dtinput\>=to_date\(\'20090101\',\'yyyymmdd\'\)  \"
imp bds/bdstest@ORCL file=./CPFLOG20090602.dmp tables=bs_bankinstructioninfo fromuser=bdsdata touser=bds ignore=y


--查询表空间
select default_tablespace,temporary_tablespace from dba_users;

--创建表空间
create tablespace bds 
datafile 'E:\oracle19c\oradata\ORCL\bds.dbf' size 1024M --存储地址 初始大小1G
autoextend on next 10M maxsize unlimited   --每次扩展10M,无限制扩展
EXTENT MANAGEMENT local  autoallocate
segment space management auto;

方式二:不使用dos窗口命令执行,可使用PLSQL工具执行导入导出(PLSQL工具提供三种方式:Oracle Import/Export、SQL Inserts、PL/SQL Developer)

    <可登录其他管理员用户,然后执行<dos窗口执行>里面的删用户建用户的sql操作>

在这里执行过程中,有几张表创建失败,查找log得知是因为这几张表中有clob和nclob类型字段,这个类型的表在创建时会带上表空间配置,而我的两个表空间名称不一致导致报错,果断删用户,新建表空间名称为备份库的表空间名称,然后再操作就ok了。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/270749.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

WebRTC概念

定义 一个实时通信标准 通话原理 媒体协商 在WebRTC中&#xff0c;参与视频通讯的双方必须先交换SDP信息&#xff0c;获得一个都支持的编码格式 网络协商 目的&#xff1a;找到一条相互通讯的链路 做法&#xff1a;获取外网IP地址映射&#xff0c;通过信令服务器交换“网…

RK3588平台开发系列讲解(AI 篇)RKNN-Toolkit2 模型的加载转换

文章目录 一、Caffe 模型加载接口二、TensorFlow 模型加载接口三、TensorFlowLite 模型加载接口四、ONNX 模型加载五、DarkNet 模型加载接口六、PyTorch 模型加载接口沉淀、分享、成长,让自己和他人都能有所收获!😄 📢 RKNN-Toolkit2 目前支持 Caffe、TensorFlow、Tensor…

【Java JVM】Java 实例对象的访问定位

Java 程序会通过栈上的 reference 数据来操作堆上的具体对象。 但是 reference 类型在《Java虚拟机规范》里面只规定了它是一个指向对象的引用, 并没有定义这个引用应该通过什么方式去定位, 访问到堆中对象的具体位置, 所以对象访问方式也是由虚拟机实现而定的&#xff0c;主流…

【MYSQL】MYSQL 的学习教程(七)之 慢 SQL 优化思

1. 慢 SQL 优化思路 慢查询日志记录慢 SQLexplain 分析 SQL 的执行计划profile 分析执行耗时Optimizer Trace 分析详情确定问题并采用相应的措施 1. 慢查询日志记录慢 SQL 如何定位慢SQL呢&#xff1f; 我们可以通过 慢查询日志 来查看慢 SQL。 ①&#xff1a;开启慢查询日志…

Django 访问前端页面一直在转异常:ReferenceError:axios is not defined

访问&#xff1a;http://127.0.0.1:8080/ my.html 一、异常&#xff1a; 二、原因 提示&#xff1a;axios找不到&#xff01;&#xff01; 查看代码<script src"https://unpkg.com/axios/dist/axios.min.js"></script>无法访问到官网 三、解决 Using j…

Opencv学习笔记(二)图像基本操作

图像基本操作 一、边界填充 二、图像融合 三、图像阈值 四、图像平滑 五、形态学预算 1、腐蚀操作 2、膨胀操作 3、开闭运算操作 4、梯度运算 5、顶帽运算 6、黑帽运算 一、边界填充 cv2.copyMakeBorder(img, top_size, bottom_size, left_size, right_size, borde…

鸿蒙基础-常用组件与布局(ArkTS)

实现“登录”页面 本节主要介绍“登录”页面的实现&#xff0c;页面使用Column容器组件布局&#xff0c;由Image、Text、TextInput、Button、LoadingProgress等基础组件构成。 // LoginPage.ets Entry Component struct LoginPage {...build() {Column() {Image($r(app.media…

信号优先级与安全性

问题 对于同一个进程&#xff0c;如果存在两个不同的未决实时信号&#xff0c;那么先处理谁&#xff1f; 信号优先级的概念 信号的本质是一种软中断 (中断有优先级&#xff0c;信号也有优先级) 对于同一个未决实时信号&#xff0c;按照发送先后次序递送给进程 对于不同的未…

K8S三台服务器一键部署总结

随着互联网、云计算技术的深入发展&#xff0c;为降低企业大规模云应用建设的难度和成本&#xff0c;支持云应用开发、运行与运维一体化的云应用平台软件应运而生。在数通家族中对企业集成套件的云平台开发、部署、管理、运维进行统一管理&#xff0c;实现数据集成和共享的平台…

使用Mecury人型机器人搭建VR遥操作控制平台!

概述 VR遥操作机械臂是一种将虚拟现实技术与机械臂控制相结合的系统&#xff0c;使用户可以通过虚拟现实设备操控和交互实际的机械臂。这种技术可以应用于多个领域&#xff0c;包括远程操作、培训、危险环境中的工作等。 双臂人形机器人是一种模拟人体上半身结构&#xff0c;包…

FXCM福汇官网:深入解析BOLL指标的喇叭口形态及含义

BOLL指标是一种通过布林线&#xff08;Bollinger Bands&#xff09;的上轨线、中轨线和下轨线的相互关系来判断市场趋势和波动性的技术分析工具。BOLL指标的喇叭口形态包括开口型、收口型和紧口型&#xff0c;它们各自具有独特的含义。 《FXCM福汇官网开户》 1. 开口型喇叭口…

探索 React Hooks 的世界:如何构建出色的组件(上)

&#x1f90d; 前端开发工程师&#xff08;主业&#xff09;、技术博主&#xff08;副业&#xff09;、已过CET6 &#x1f368; 阿珊和她的猫_CSDN个人主页 &#x1f560; 牛客高级专题作者、在牛客打造高质量专栏《前端面试必备》 &#x1f35a; 蓝桥云课签约作者、已在蓝桥云…

C/C++ BM2链表内指定区间反转

文章目录 前言题目1. 解决方案一1.1 思路阐述1.2 源码 2. 解决方案二2.1 思路阐述2.2 源码 总结 前言 这题是BM1的升级版&#xff0c;不过是把完整的链表翻转变成了指定区间。 题目 描述 将一个节点数为 size 链表 m 位置到 n 位置之间的区间反转&#xff0c;要求时间复杂度 …

【数据结构】LRU缓存的简单模拟实现(leetcode力扣146LRU缓存)

文章目录 一、定义二、LRU模拟实现二、代码实现 一、定义 LRU是Least Recently Used的缩写&#xff0c;意思是最近最少使用&#xff0c;它是一种Cache替换算法。 Cache的容量有限&#xff0c;因此当Cache的容量用完后&#xff0c;而又有新的内容需要添加进来时&#xff0c; 就…

在Android中使用Flow获取网络连接信息

在Android中使用Flow获取网络连接信息 如果你是一名Android开发者&#xff0c;你可能会对这个主题感到有趣。考虑到几乎每个应用程序都需要数据交换&#xff0c;例如刷新动态或上传/下载内容。而互联网连接对此至关重要。但是&#xff0c;当用户的设备离线时&#xff0c;数据如…

天啦撸 超级麻烦的MySQL索引和数据引擎,快拿小本本记好

1 MySQL的索引 1.1 索引 定义&#xff1a; 索引是一个排序的列表&#xff0c;包含索引字段的值和其对应的行记录的数据所在的物理地址 ●索引是一个排序的列表&#xff0c;在这个列表中存储着索引的值和包含这个值的数据所在行的物理地址&#xff08;类似于C语言的链表通过…

使用Maven Archetype插件制作项目脚手架(一)

Archetype是一个Maven项目模板工具包。通过Archetype我们可以快速搭建Maven项目。比如我们在ide里面创建项目时&#xff0c;可以选择很多maven内置的Archetype&#xff0c;我们最常用的可能是maven-archetype-quickstart 当然maven提供了能力&#xff0c;让我们自定义项目结构&…

Electron自定义通知Notification

Notification是什么&#xff1f; 对于渲染进程&#xff0c;Electron 允许开发者使用通知中API&#xff0c;来运行系统的原生通知进行显示。 如何实现系统Notification&#xff1f; const { Notification } require(electron);const isAllowed Notification.isSupported();…

最新ChatGPT商业运营网站程序源码,支持Midjourney绘画,GPT语音对话+DALL-E3文生图+文档对话总结

一、前言 SparkAi创作系统是基于ChatGPT进行开发的Ai智能问答系统和Midjourney绘画系统&#xff0c;支持OpenAI-GPT全模型国内AI全模型。本期针对源码系统整体测试下来非常完美&#xff0c;可以说SparkAi是目前国内一款的ChatGPT对接OpenAI软件系统。那么如何搭建部署AI创作Ch…

【FPGA】分享一些FPGA高速信号处理相关的书籍

在做FPGA工程师的这些年&#xff0c;买过好多书&#xff0c;也看过好多书&#xff0c;分享一下。 后续会慢慢的补充书评。 【FPGA】分享一些FPGA入门学习的书籍【FPGA】分享一些FPGA协同MATLAB开发的书籍 【FPGA】分享一些FPGA视频图像处理相关的书籍 【FPGA】分享一些FPGA高速…