IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 大数据 -> Docker在Linux系统快速部署数据库大全 -> 正文阅读

[大数据]Docker在Linux系统快速部署数据库大全

📢📢📢📣📣📣
哈喽!大家好,我是【IT邦德】,江湖人称jeames007,10年DBA工作经验
一位上进心十足的【大数据领域博主】!😜😜😜
中国DBA联盟(ACDU)成员,目前从事DBA及程序编程
擅长主流数据Oracle、MySQL、PG 运维开发,备份恢复,安装迁移,性能优化、故障应急处理等。
? 如果有对【数据库】感兴趣的【小可爱】,欢迎关注【IT邦德】💞💞💞
??????感谢各位大可爱小可爱!??????

前言

为了方便大家使用Oracle\MySQL\PG\Redis等数据库,邦德老师这里分享各种Docker容器镜像部署方式。

?? 1.Docker部署Oracle

? 1.1 Oracle 10G环境(10.2.0.5)

#可以选择从阿里云下载
docker pull registry.cn-shanghai.aliyuncs.com/techerwang/oracle:ora10g_10205
镜像大概2.5G左右,解压后大约7.6G左右,所以请保留充足的空间
#从阿里云下载后可以tag成如下形式:
docker tag registry.cn-shanghai.aliyuncs.com/techerwang/oracle:ora10g_10205 jemora10g:10205

#创建容器
docker run -itd --name jemora10205 -h jemora10g -p 3380:3389 \
-p 31521:1521  -p 312:22 \
--privileged=true \
jemora10g:10205 init

注意:hostname必须为jemora10g

#进入容器
[root@jeames ~]# docker exec -it jemora10205 bash

#启动数据库和监听
[root@jemora10205 /]# su - oracle
[oracle@jemora10205 ~]$ lsnrctl start
[oracle@jemora10205 ~]$ sqlplus / as sysdba
SYS@jem10g> startup
SYS@jem10g> select * from v$version;

#外部连接容器内的数据库
sqlplus sys/jem@192.168.1.54:31521/JEM10G AS SYSDBA
注意:此处访问宿主机端口为31521哈,容器内部是1521,端口映射,系统管理员密码为jem

在这里插入图片描述

? 1.2 Oracle 11G企业版环境(11.2.0.4)

#可以选择从阿里云下载
docker pull registry.cn-shanghai.aliyuncs.com/techerwang/oracle:ora11g11204
镜像大概3.2G左右,解压后大约7.6G左右,所以请保留充足的空间

#从阿里云下载后可以tag成如下形式:
docker tag registry.cn-shanghai.aliyuncs.com/techerwang/oracle:ora11g11204 jemora11g:11204

#创建容器
docker run -itd --name jemora11204 -h jemora11204 \
--privileged=true -p 21521:1521 -p 222:22  -p 21158:1158 \
jemora11g:11204 init

#进入容器
[root@jeames ~]# docker exec -it jemora11204 bash

#启动数据库和监听
[root@jemora11204 /]# su - oracle
[oracle@jemora11204 ~]$ lsnrctl start
[oracle@jemora11204 ~]$ sqlplus / as sysdba
SYS@JEM11G2> startup
SYS@JEM11G2> select * from v$version;

#外部连接容器内的数据库
sqlplus sys/jem@192.168.1.54:21521/JEM11GR2 AS SYSDBA
注意:此处访问宿主机端口为21521哈,容器内部是1521,端口映射,系统管理员密码为jem

在这里插入图片描述

?1.3 Oracle 12CR2环境(12.2.0.1)

#可以选择从阿里云下载
docker pull registry.cn-shanghai.aliyuncs.com/techerwang/oracle:ora12c_12201
镜像大概2.5G左右,解压后大约7.6G左右,所以请保留充足的空间

#从阿里云下载后可以tag成如下形式:
docker tag registry.cn-shanghai.aliyuncs.com/techerwang/oracle:ora12c_12201 jemora12c:12201

#创建容器
docker run -itd --name jemora1221 -h jemora1221 \
--privileged=true -p 41521:1521 -p 422:22 -p 15500:5500 -p 15501:5501 \
jemora12c:12201 init

#进入容器
[root@jeames ~]# docker exec -it jemora1221 bash

#启动数据库和监听
[root@jemora1221 /]# su - oracle
[oracle@jemora1221 ~]$ lsnrctl start
[oracle@jemora1221 ~]$ sqlplus / as sysdba
SYS@jem> startup
SYS@jem> select * from v$version;

在这里插入图片描述

如何切换容器?

SQL> ALTER SESSION SET container=JEMPDB;
Session altered.
SYS@cdb1> show con_name
alter pluggable database all open;
alter pluggable database all close;

外部连接容器内的数据库
sqlplus sys/jem@192.168.1.54:41521/jem AS SYSDBA
注意:此处访问宿主机端口为41521哈,容器内部是1521,端口映射,系统管理员密码为jem

?? 2.Docker部署MySQL

在这里插入图片描述

Mysql 社区版是开源的,所以你不需要支付额外的费用。
Mysql 支持大型的数据库。可以处理拥有上千万条记录的大型数据库。
MySQL 使用标准的 SQL 数据语言形式。
Mysql 可以允许于多个系统上,并且支持多种语言。这些编程语言包括 C、C++、Python、Java、Perl、PHP、Eiffel、Ruby 和 Tcl 等。
Mysql 对 PHP 有很好的支持,PHP 是目前最流行的 Web 开发语言。
MySQL 支持大型数据库,支持 5000 万条记录的数据仓库,32 位系统表文件最大可支持 4GB,64 位系统支持最大的表文件为 8TB。
Mysql 是可以定制的,采用了 GPL 协议,你可以修改源码来开发自己的 Mysql 系统
官方网址:https://www.mysql.com/

? 2.1 下载镜像

https://hub.docker.com/ 中搜索mysql
[root@jeames ~]# docker pull mysql:5.7.30
[root@jeames ~]# docker pull mysql:8.0.20

? 2.2 安装部署

## 创建容器
mkdir -p /usr/local/mysql5730/
mkdir -p /usr/local/mysql8020/

docker run -d --name mysql5730 -h mysql5730 \
-p 3309:3306 \
-v /usr/local/mysql5730/conf:/etc/mysql/conf.d \
-e MYSQL_ROOT_PASSWORD=root -e TZ=Asia/Shanghai \
mysql:5.7.30

docker run -d --name mysql8020 -h mysql8020 \
-p 3310:3306 \
-v /usr/local/mysql8020/conf:/etc/mysql/conf.d \
-e MYSQL_ROOT_PASSWORD=root -e TZ=Asia/Shanghai \
mysql:8.0.20

##访问Mysql
--登陆容器
docker exec -it mysql5730 bash
mysql -uroot -proot
mysql> select user,host from mysql.user

--远程访问
mysql -uroot -proot -h192.168.59.220 -P3309

在这里插入图片描述

?? 3.Docker部署postgreSQL

在这里插入图片描述

PostgreSQL是加州大学伯克利分校计算机系开发的,一个开源免费的关系式数据库管理系统,
经过长达15年以上的积极开发和不断改进,
PostgreSQL已在可靠性、稳定性、数据一致性等获得了业内相对高的声誉。
官网:https://www.postgresql.org/

? 3.1 镜像下载

docker search postgres
https://hub.docker.com
[root@jeames ~]# docker pull postgres:13.2

? 3.2 安装部署

#白名单配置
cat << EOF > /tmp/pg_hba.conf
# TYPE  DATABASE    USER    ADDRESS       METHOD
local     all       all                    trust
host      all       all   127.0.0.1/32     trust
host      all       all    0.0.0.0/0        md5
host   replication  all    0.0.0.0/0        md5
local  replication  all                    trust
EOF

[root@jeames ~]# docker ps -a --format "table {{.ID}}\t{{.Names}}\t{{.Status}}" 
[root@jeames ~]# docker cp /tmp/pg_hba.conf jempg132:/var/lib/postgresql/data/pg_hba.conf
[root@jeames ~]# docker start jempg132

【容器内登陆】
[root@centos7 ~]# docker exec -it jempg132 bash
root@jempg132:/# su - postgres
postgres@jempg132:~$ psql
postgres=# select version();
或者以下命令也可以
postgres@jempg133:~$ psql -U postgres -d postgres

【外部访问】
psql -U postgres -h 192.168.1.56 -p 54328 -d postgres

在这里插入图片描述

?? 4.Docker部署Redis

在这里插入图片描述

REmote DIctionary Server(Redis) 是一个由 Salvatore Sanfilippo 写的 key-value 存储系统,
是跨平台的非关系型数据库。
Redis 是一个开源的使用 ANSI C 语言编写、遵守 BSD 协议、支持网络、可基于内存、分布式、可选持久性的键值对(Key-Value)存储数据库,并提供多种语言的 API。
Redis 通常被称为数据结构服务器,因为值(value)可以是字符串(String)、哈希(Hash)、列表(list)、集合(sets)和有序集合(sorted sets)等类型。
Redis 官网:https://redis.io/

? 4.1 镜像下载

[root@jeames ~]# docker search redis
[root@jeames ~]# docker pull redis:6.2.2
[root@jeames ~]# docker pull redis

? 4.2 安装部署

docker run -di --name=redis -h redis -p 26379:6379 redis
docker update --restart=always redis   --开机自启动
docker ps -a  --format "table {{.ID}}\t{{.Names}}\t{{.Status}}"
docker rm -f redis

在这里插入图片描述

  大数据 最新文章
实现Kafka至少消费一次
亚马逊云科技:还在苦于ETL?Zero ETL的时代
初探MapReduce
【SpringBoot框架篇】32.基于注解+redis实现
Elasticsearch:如何减少 Elasticsearch 集
Go redis操作
Redis面试题
专题五 Redis高并发场景
基于GBase8s和Calcite的多数据源查询
Redis——底层数据结构原理
上一篇文章      下一篇文章      查看所有文章
加:2022-06-23 00:55:58  更:2022-06-23 00:56:27 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年5日历 -2024/5/19 22:58:05-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码