Docker中安装Oracle10g和oracle增删改查

Docker中安装Oracle 10g

一、Docker中安装Oracle 10安装步骤

Docker中安装Oracle 10g

1.下载镜像

docker pull registry.cn-shanghai.aliyuncs.com/techerwang/oracle:ora10g_10205

2.重新tag镜像

docker tag registry.cn-shanghai.aliyuncs.com/techerwang/oracle:ora10g_10205 oracle10g:10205

3.起动docker容器

docker run -itd --name oracle10205 -h jemora10g -p 31521:1521 --privileged=true --restart=always oracle10g:10205 init

4.进入容器

docker exec -it oracle10205 bash

5.起动监听和数据库

root@localhost \~\]# docker exec -it oracle10205 bash \[root@jemora10g /\]# su - oracle -bash: iexport: command not found \[oracle@jemora10g \~\]$ lsnrctl start \[oracle@jemora10g \~\]$ sql SYS@jem10g\> startup 6.创建用户并赋予权限 SQL\> create user root identified by "123456"; SQL\> grant connect,resource,dba to root; --表示把 connect,resource,dba权限授予root用户 7.配置数据库开机启动 容器内修改配置 \[root@jemora10g /\]# vim /etc/rc.d/rc.local 增加下面两行 su - oracle -c "lsnrctl start" su - oracle -c "dbstart" 修改配置\[root@jemora10g /\]# vim /etc/oratab 将最后一个参数修改为Y JEM10G:/u01/app/oracle/product/10.2.0.1/dbhome_1:Y ## 二、连接数据库登录 端口31521 服务名jem10g 默认账号密码:root/123456 #查看日志等待安装完成 docker logs -f 容器id ## 三 oracle数据库的增删改查及联表查询的相关操作 ### oracle数据库,创建students数据表,创建100万条数据 --创建students数据表,创建1000条数据 create table OUTLN.Students as select rownum as id, to_char(sysdate + rownum/24/3600, 'yyyy-mm-dd hh24:mi:ss') as inc_datetime, CONCAT('zhang',rownum) as studen_name, CONCAT('183',trunc(dbms_random.value(00000000, 99999999))) as stu_number, trunc(dbms_random.value(0, 100)) as stu_age, dbms_random.string('x', 20) random_string from dual connect by level \<= 1000000; ### 增删改查 -- 查询表 select \* FROM OUTLN.students WHERE ID\<10; select \* from students where ID=(select max(id) from students); -- SQL 语句查询 Oracle 数据库中的所有库 SELECT tablespace_name FROM dba_tablespaces; -- SQL 语句查询某个数据库中的所有表 SELECT table_name FROM user_tables; -- 查询Oracle 12C实例名 SELECT instance_name FROM v$instance; -- 查询Oracle中所有的用户 SELECT \* FROM dba_users; -- 修改数据 update students set id=999 where ID=2; -- 插入语句 insert into OUTLN.students(ID,INC_DATETIME) values(99999,'2022-06-01 19:57:44'); -- 删除数据 delete from students where id=999; drop table OUTLN.students; -- 删除表 drop table myTestTable; -- 删除库 drop database test1;

相关推荐
金刚猿8 小时前
01_虚拟机中间件部署_root 用户安装 docker 容器,配置非root用户权限
docker·中间件·容器
JH_Kong8 小时前
解决 WSL 中 Docker 权限问题:从踩坑到完整修复
docker·容器
忆~遂愿8 小时前
GE 引擎与算子版本控制:确保前向兼容性与图重写策略的稳定性
大数据·开发语言·docker
陈桴浮海10 小时前
Kustomize实战:从0到1实现K8s多环境配置管理与资源部署
云原生·容器·kubernetes
Goat恶霸詹姆斯10 小时前
mysql常用语句
数据库·mysql·oracle
xiaowu08010 小时前
C# 拆解 “显式接口实现 + 子类强类型扩展” 的设计思想
数据库·oracle
Apple_羊先森12 小时前
ORACLE数据库巡检SQL脚本--19、磁盘读次数最高的前5条SQL语句
数据库·sql·oracle
70asunflower12 小时前
Emulation,Simulation,Virtualization,Imitation 的区别?
linux·docker
ShiLiu_mtx12 小时前
k8s - 7
云原生·容器·kubernetes
春日见13 小时前
车辆动力学:前后轮车轴
java·开发语言·驱动开发·docker·计算机外设