Docker中安装Oracle11g和oracle增删改查

Docker中安装Oracle11g和oracle增删改查

Docker中安装Oracle11g数据库

Docker 安装oralce11g
1.拉取oracle_11g镜像

docker pull registry.cn-hangzhou.aliyuncs.com/helowin/oracle_11g

2.创建oracle11g容器

docker run -d -p 1521:1521 --name oracle11g registry.cn-hangzhou.aliyuncs.com/helowin/oracle_11g

3.查看oracle11g容器是否创建成功

docker ps -a

4.启动oracle11g容器

Docker start oracle11g

5.进入oracle11g容器进行配置

docker exec -it oracle11g bash
su root
helowin

6.切换到root用户下进行配置
密码为:helowin
7、编辑profile文件配置ORACLE环境变量
vi /etc/profile

8、最后添加以下3行配置

export ORACLE_HOME=/home/oracle/app/oracle/product/11.2.0/dbhome_2
export ORACLE_SID=helowinexport 
PATH=$ORACLE_HOME/bin:$PATH

保存 ::wq
让配置生效:source /etc/profile
9、创建软连接

ln -s $ORACLE_HOME/bin/sqlplus /usr/bin

10、切换到oracle 用户
su oracle

11、登录sqlplus并修改sys、system用户密码
sqlplus /nolog
conn /as sysdba

12、修改sys、system用户密码并刷新权限

alter user system identified by oracle;

alter user sys identified by oracle;

ALTER PROFILE DEFAULT LIMIT PASSWORD_LIFE_TIME UNLIMITED;

退出:exit;
13、查看一下oracle实例状态
lsnrctl status

Oracle 11g添加用户,并授权

docker exec -it oracle11g bash – 进入数据库

su root – 切换root,密码helowin
su - oracle 切换oracle用户
登录sqlplus并添加用户
sqlplus /nolog
conn /as sysdba

创建用户
create user sa identified by root; – 创建用户sa
grant connect,resource,dba to sa; – 对于普通用户:授予connect, resource权限。
REVOKE DBA FROM sa; – 取消dba授权
对于DBA管理用户:授予connect,resource, dba权限
alter user sa identified by oracle; --修改用户密码

用nacivat连接oracle数据库

主机:IP地址
端口:1521
服务名:helowin(一定要填写helowin)
密码:oracle(第12步设置的密码)

oracle数据库,创建students数据表,Oracle数据库创建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;

– 修改数据
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;

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
要在Docker安装Oracle 11g,您可以按照以下步骤操作: 1. 首先,确保您的机器上已经安装Docker。您可以在终端运行`docker --version`来检Docker安装情况。 2. 下载Oracle 11g的安装文件。由于Oracle数据库是商业产品,因此您需要从官方网站或授权渠道获取安装文件。 3. 创建一个Docker镜像。在您的终端,使用以下命令创建一个Dockerfile: ```Dockerfile FROM oraclelinux:7-slim COPY oracle11g_installer.zip /tmp/ RUN yum -y install unzip \ && unzip /tmp/oracle11g_installer.zip -d /tmp/installer \ && rm /tmp/oracle11g_installer.zip \ && cd /tmp/installer/database \ && ./runInstaller -silent -ignorePrereq -ignoreSysPrereqs -responseFile /tmp/installer/db_install.rsp RUN rm -rf /tmp/installer ENV ORACLE_HOME=/u01/app/oracle/product/11.2.0/dbhome_1 ENV PATH=$ORACLE_HOME/bin:$PATH ENV LD_LIBRARY_PATH=$ORACLE_HOME/lib EXPOSE 1521 CMD ["/u01/app/oracle/product/11.2.0/dbhome_1/bin/dbstart", "/u01/app/oracle/product/11.2.0/dbhome_1"] ``` 将上述Dockerfile的`oracle11g_installer.zip`替换为您下载的Oracle 11g安装文件的路径。 4. 构建Docker镜像。在终端,使用以下命令构建镜像: ```shell docker build -t oracle11g . ``` 该命令将根据Dockerfile创建一个名为`oracle11g`的镜像。 5. 运行Oracle 11g容器。在终端,使用以下命令运行容器: ```shell docker run -d -p 1521:1521 --name oracle11g-container oracle11g ``` 该命令将在后台运行一个名为`oracle11g-container`的容器,并将容器的1521端口映射到主机的1521端口。 现在,您应该可以通过连接到`localhost:1521`来访问Oracle数据库。请注意,使用这种方式安装Oracle 11g是仅限于开发和测试用途的。如果您需要在生产环境使用Oracle数据库,请参考官方文档或咨询专业人士以获取更详细的指导。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

软件测试很重要

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值