docker安装数据库

mysql安装

mysql8

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
-- 下载镜像
docker pull mysql:8.0.29
-- 创建并运行容器
docker run -p 3306:3306 --name mysql8.0.29 -e MYSQL_ROOT_PASSWORD=123456 -d mysql:8.0.29

docker ps -a

docker run -p 3306:3306 --name mysql8 -e MYSQL_ROOT_PASSWORD=123456 -d registry.openanolis.cn/openanolis/mysql:8.0.30-8.6

-- 创建用户
create user 'testuser1' @'%' IDENTIFIED by 'testuser1' ;
-- 创建数据库
create database testdb1;
-- 授权
GRANT ALL ON testdb1.* TO 'testuser1' @'%';

-- 刪除
REVOKE ALL ON testdb1.* FROM 'testuser1' @'%';
drop database testdb1;
drop user 'testuser1' @'%';

jdbc连接

1
2
3
4
--jdbcurl
jdbc:mysql://localhost:3306/

allowPublicKeyRetrieval=true

mysql5安装

1
2
3
4
5
6
7
8
# 下载
docker pull mysql:5.7

#运行实例
docker run --name mysqldb5.7 -e MYSQL_ROOT_PASSWORD=123456 -p 3306:3306 -d mysql:5.7

#进入容器
docker exec -it mysqldb /bin/bash

mariadb 安装

1
2
3
4
5
-- 下载
docker pull mariadb:11.2.2

-- 运行
docker run --name mariadb11 -e MYSQL_ROOT_PASSWORD=123456 -p 3306:3306 -d mariadb:11.2.2

dameng8安装

  1. docker镜像文件下载 https://eco.dameng.com/download/

  2. 导入并启动

    1
    2
    3
    4
    5
    6
    7
    8
    -- 导入镜像文件
    docker load -i dm8_20220822_rev166351_x86_rh6_64_ctm.tar

    -- 查看导入的镜像
    docker images

    -- 配置并创建实例
    docker run -d -p 5236:5236 --name dm8_01 -e PAGE_SIZE=16 -e LD_LIBRARY_PATH=/opt/dmdbms/bin -e INSTANCE_NAME=sysware ab98e2f4a568

3.测试连接

1
2
jdbc:dm://localhost:5236/sysware
SYSDBA/SYSDBA001

达梦SQL示例

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
-- 创建用户
CREATE USER CDM_S5_20220118 IDENTIFIED BY CDM_S5_20220118 ACCOUNT UNLOCK;

-- 授权
GRANT RESOURCE TO CDM_S5_20220118;
GRANT SELECT ANY TABLE TO CDM_S5_20220118;
GRANT SELECT ANY VIEW TO CDM_S5_20220118;

--删除用户
DROP USER CDM_S5_20220118 CASCADE;


REVOKE SELECT ANY TABLE FROM CDM_S5_20220118;

GRANT SELECT ANY TABLE TO CDM_S5_20220118;


select * from SYS."V$DM_INI" where para_name='PK_WITH_CLUSTER';

SELECT * FROM v$log;


-- 达梦数据库
-- 查询数据库当前所有会话数
select count(*) from v$sessions;

-- 查询不同用户占用的会话数
SELECT * FROM (
select user_name, count(*) AS scount from v$sessions GROUP BY user_name
) ORDER BY scount desc;

-- 查询允许的最大会话数
select name, value from v$parameter where name = 'MAX_SESSIONS';

oracle-19c安装

方式1:aliyuncs上别人上传的镜像

  • 1.1 直接下载镜像并启动
    1
    2
    3
    4
    5
    6
    -- 下载镜像
    docker pull registry.cn-hangzhou.aliyuncs.com/zhuyijun/oracle:19c

    -- 配置并创建容器

    docker run -d -p 1521:1521 -p 5500:5500 -e ORACLE_SID=ORCLCDB -e ORACLE_PDB=ORCLPDB1 -e ORACLE_PWD=123456 -e ORACLE_EDITION=standard -e ORACLE_CHARACTERSET=AL32UTF8 --name orcle19c_01 registry.cn-hangzhou.aliyuncs.com/zhuyijun/oracle:19c

方式2:oracle官方镜像

  • 1.2 oracle公开镜像
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    -- 下载
    docker pull container-registry.oracle.com/database/free:23.3.0.0

    -- 启动容器
    docker run -itd --name oracle23c -p 1521:1521 39cabc8e6db0

    -- 初始化密码
    docker exec oracle23c ./setPassword.sh <your password>

    -- 查看容器初始化进度或日志
    docker logs -f oracle23c

    -- jdbc system/xx
    jdbc:oracle:thin:@//localhost:1521/freepdb1

方式3:自己制作镜像

  • 1.3 无法下载的时候
    制作镜像
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29

    -- 构建镜像
    ./buildContainerImage.sh -v 19.3.0 -e

    -- 启动容器
    docker run -itd --name oracle19c -p 1521:1521 -p 5500:5500 -e ORACLE_SID=ORCLCDB -e ORACLE_PDB=ORCLPDB1 oracle/database:19.3.0-ee

    -- 查看容器初始化进度或日志
    docker logs -f oracle19c

    -- 初始化密码
    docker exec oracle19c ./setPassword.sh <your password>

    -- sqlplus登录sysdba
    [root@docker dockerfiles]# docker exec -it oracle19c /bin/bash
    [oracle@6a5cd3f9fb6c dbs]$ export ORACLE_SID=ORCLPDB1
    [oracle@6a5cd3f9fb6c dbs]$ sqlplus / as sysdba

    -- jdbc system/xx
    jdbc:oracle:thin:@//localhost:1521/orclpdb1

    -- 创建用户及授权
    CREATE USER p2m_boot_20230128 IDENTIFIED BY p2m_boot_20230128 ACCOUNT UNLOCK;
    GRANT CONNECT, RESOURCE, CREATE VIEW TO p2m_boot_20230128;
    -- 解决 对USER没有操作权限的问题
    grant unlimited tablespace to p2m_boot_20230128;

    --删除用户
    DROP USER p2m_boot_20230128 CASCADE;

postgresql-14安装

https://blog.csdn.net/yetyrain/article/details/105642488

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
-- 下载镜像
docker pull postgres:14.10

-- 创建并启动容器
docker run -it --name postgres14.10 -e POSTGRES_PASSWORD='abc123' -e ALLOW_IP_RANGE=0.0.0.0/0 -p 5432:5432 -d postgres:14.10

-- 打开远程访问
postgres:/var/lib/postgresql/data/pg_hba.conf
host all all 0.0.0.1/0 trust

postgres:/var/lib/postgresql/data/postgresql.conf
listen_addresses = '*'

-- jdbc访问 postgres/abc123
jdbc:postgresql://localhost:5432/postgres

--新建用户
CREATE USER p2m_boot_20230128 WITH PASSWORD 'p2m_boot_20230128';
--为该用户新建模式名
CREATE SCHEMA p2m_boot_20230128 AUTHORIZATION p2m_boot_20230128;
--删除用户
drop schema p2m_boot_20230128 cascade;
drop owned by p2m_boot_20230128 cascade;
drop USER p2m_boot_20230128;

-- 查看版本
select version();

人大金仓

docker run -d -it –privileged=true -v opt:/opt -p 54321:54321 –name kingbasev1 kingbase:v1

docker logs -f kingbasev1

端口: 54321
用户名: SYSTEM
密码: 123456
默认数据库: TEST