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+端口就可以进入,设置一个密码后就可以登录。