使用docker安装oracle数据库(idea)

本文详细介绍了如何使用Docker部署Oracle数据库,包括拉取镜像、启动容器、IDEA连接、创建表空间、用户权限设定以及MySQL与Oracle之间的数据类型、分页、存储过程和触发器差异。还介绍了远程管理工具Portainer的安装和使用。
摘要由CSDN通过智能技术生成

1、查找docker镜像(端口:1251)

docker search oracle  # 我们选择精简版 oracle-xe-11g

2、拉取镜像

docker pull + 镜像名  # oracleinanutshell/oracle-xe-11g

 3、启动镜像

docker run -d -p 1521:1521 -e ORACLE_ALLOW_REMOTE=true --name oracle11g oracleinanutshell/oracle-xe-11g
# ORACLE_ALLOW_REMOTE=true 设置为true表示可以远程访问。oracle数据库的默认密码是:oracle,用户名是:system,默认端口:1251。

4、使用idea连接

5、创建表空间

create tablespace jwxt datafile 'jwxt.ora' size 500m 
autoextend on
next 50m maxsize 20480m
extent management local;

# 创建表空间 jwxt:这个命令表示要创建一个名为jwxt的表空间。
# datafile 'jwxt.ora' size 500m:这个命令表示要在jwxt表空间中创建一个名为jwxt.ora的数据文件,初始大小为500兆字节。
# autoextend on:这个命令表示在数据文件达到最大大小时自动扩展。
# next 50m:这个命令表示每次自动扩展时增加50兆字节的空间。
# maxsize 20480m:这个命令表示数据文件的最大大小为20480兆字节。
# extent management local:这个命令表示使用本地管理的extent管理方式来管理表空间中的数据文件。

5、创建表空间默认用户

create user jwxt identified by 888 default tablespace jwxt quota 500m on jwxt;

6、赋予其所有权限

grant all privileges to jwxt;

7、创表:oracle数据库使用序列sequence完成数据库自增操作,基本上每一张表都会创建一个序列。

create sequence USER_SEQ maxvalue 1000000 # 创建序列号 
创建:
	create table "user"(
		id int
			constaraint USER_PK
			primary key,
			name varchar2(255)
	);
# 表名有双引号
插入:
	insert into "user"(ID,NAME) values (USER_SEQ.nextval,'张三');
修改:
	update "user" set name='zhangsan' where id = 2; #修改跟mysql写法一样。
删除:
	delete "user" where id = 5;	# 删除跟mysql一样。
分页:
	select *
from (select rownum r_, row_.* from (select * from "user" order by id) row_ where rownum <= 5)
where r_ >= 1;
1:代表的是索引的起始位置
5:代表的是索引的结束位置。
Mysql和Oracle的区别

数据类型:MySQL和Oracle在数据类型上存在一些差异,例如MySQL支持TINYINT、MEDIUMINT等类型,而Oracle不支持。Oracle支持RAW、LONG RAW等类型,而MySQL不支持。

分页功能:MySQL使用LIMIT进行分页查询,而Oracle使用ROWNUM进行分页查询。

存储过程:MySQL和Oracle在存储过程的语法和功能上存在差异。例如MySQL支持OUT参数,而Oracle不支持。Oracle支持嵌套事务,而MySQL不支持。

触发器:MySQL和Oracle在触发器的语法和功能上也存在差异。例如MySQL的触发器只支持BEFORE和AFTER两种类型,而Oracle支持BEFORE、AFTER、INSTEAD OF三种类型。

字符串连接:MySQL使用CONCAT函数进行字符串连接,而Oracle使用“||”符号进行字符串连接。

自增长字段:MySQL使用AUTO_INCREMENT关键字进行自增长,而Oracle使用SEQUENCE进行自增长

补充:远程Portainer

 1、下载docker的可视化工具

yum install -y docker-compose

2、安装Portainer

docker volume create portainer_data		# 创建一个名为"portainer_data"的卷。
docker run -d -p 9000:9000 -v /var/run/docker.sock:/var/run/docker.sock -v portainer_data:/data --name portainer portainer/portainer

输入IP+端口就可以进入,设置一个密码后就可以登录。

  • 16
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
要配置Oracle数据库的安全访问,可以采取以下步骤: 1. 创建一个Oracle链接服务器。可以使用OpenQuery函数来远程访问Oracle数据库中的表。远程语法通常为:select * from OpenQuery(Oracle链接服务器名称, '查询语句')。\[1\] 2. 确保使用正确的驱动程序和URL来连接Oracle数据库。驱动程序可以从Oracle官方网站下载,URL中的SID一般是orcl。在连接数据库时,输入正确的用户名和密码,并可以通过点击"Test Connection"来测试连接是否成功。\[2\] 3. 如果不想在本地安装Oracle数据库,可以考虑使用Docker容器来快速部署Oracle数据库使用Docker可以减少安装时间和安装文件的大小。可以通过使用Docker镜像来快速创建和启动Oracle数据库实例。\[3\] 通过以上步骤,您可以配置Oracle数据库的安全访问。 #### 引用[.reference_title] - *1* *3* [设置远程访问Oracle数据库](https://blog.csdn.net/weixin_42511024/article/details/116537751)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* [oracle数据库idea中配置数据库连接](https://blog.csdn.net/sunianbei/article/details/122128846)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值