欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 新闻 > 社会 > Docker搭建达梦数据库--基于 X86 架构

Docker搭建达梦数据库--基于 X86 架构

2024/12/26 10:33:33 来源:https://blog.csdn.net/weimeilayer/article/details/144180791  浏览:    关键词:Docker搭建达梦数据库--基于 X86 架构

1、部署环境
X86_64 架构的服务器 1 台,安装好docker
拉取镜像
官方最新非授权版本有些函数方法无法使用

docker pull registry.cn-hangzhou.aliyuncs.com/qiluo-images/dm8_single:dm8_20230808_rev197096_x86_rh6_64

查看镜像

docker images | grep dm8

运行容器

docker run -d \
-p 5236:5236 \
--restart=always \
--name dm8 \
--privileged=true \
-e PAGE_SIZE=16 \
-e LD_LIBRARY_PATH=/opt/dmdbms/bin \
-e EXTENT_SIZE=32 \
-e BLANK_PAD_MODE=1 \
-e LOG_SIZE=1024 \
-e UNICODE_FLAG=1 \
-e LENGTH_IN_CHAR=1 \
-e INSTANCE_NAME=dm8 \
-e CASE_SENSITIVE=0 \ 
-v /data/dm8:/opt/dmdbms/data \
dm8_single:dm8_20230808_rev197096_x86_rh6_64

本文run命令是大小写不敏感

1、页大小 (PAGE_SIZE)
2、簇大小 (EXTENT_SIZE)
3、大小写敏感 (CASE_SENSITIVE)
4、字符集 (UNICODE_FLAG)
5、VARCHAR 类型以字符为单位 (LENGTH_IN_CHAR)
6、空格填充模式 (BLANK_PAD_MODE)
7、页检查模式(PAGE CHECK) 等部分参数,
8、大小写敏感(CASE_SENSITIVE) 1:大小写敏感;0:大小写不敏感,默认值:0

一旦确定无法修改,在初始化实例时确认需求后谨慎设置!!

  1. PAGE_SIZE (页大小)
    说明: 页大小是数据库文件中单个页的大小(以字节为单位)。DM8 数据库的每一页包含若干行数据。
    设置影响: 页大小直接影响数据库的性能和空间利用率。常见的设置有 8KB、16KB、32KB 等。如果设置不合理,可能会导致存储空间浪费或性能问题。
    设置建议: 根据硬件配置、数据存储量和访问模式来确定。这里设置为 16,即每页大小为 16KB。
  2. EXTENT_SIZE (簇大小)
    说明: 簇大小是数据库在存储时分配空间的单位。每个簇由多个页面(PAGE_SIZE)组成。
    设置影响: 簇大小影响到数据库的存储效率和文件分配。簇大小过大可能导致空间浪费,过小则可能导致频繁的磁盘操作。
    设置建议: 根据数据表的大小和存储需求来选择,通常为 16、32、64 等倍数。这里设置为 32,表示每个簇包含 32 个页面。
  3. CASE_SENSITIVE (大小写敏感)
    说明: 此参数决定数据库是否区分大小写。若为 1,则区分大小写;若为 0,则不区分大小写。
    设置影响: 如果启用大小写敏感,查询时需要严格区分字符的大小写。如果禁用,abc 和 ABC 会被视为相同。
    设置建议: 根据实际需求来设置。如果数据库涉及多语言或严格的大小写要求,建议启用此选项。
  4. UNICODE_FLAG (字符集)
    说明: 该选项决定数据库使用的字符集。若为 1,表示使用 Unicode 字符集,支持多语言和国际字符。
    设置影响: 启用 Unicode 后,数据库将能够处理多种语言的字符,包括中文、日文、阿拉伯文等。
    设置建议: 若需要支持多语言或复杂字符集,设置为 1,表示使用 Unicode 字符集。大部分现代应用都会启用此选项。
  5. LENGTH_IN_CHAR (VARCHAR 类型以字符为单位)
    说明: 此参数控制 VARCHAR 类型字段在定义时使用的单位是字节还是字符。
    设置影响: 启用此选项后,VARCHAR 列的长度将按字符而非字节计算,这对于多字节字符集(如 Unicode)尤为重要。
    设置建议: 若使用多字节字符集(如 UTF-8),建议启用此选项,以确保 VARCHAR 字段长度的计算符合预期。
  6. BLANK_PAD_MODE (空格填充模式)
    说明: 当 VARCHAR 字段内容不足时,是否用空格填充至指定长度。
    设置影响: 若为 1,则当 VARCHAR 字段内容不足时,自动使用空格填充;若为 0,则不填充。
    设置建议: 若想保留字段长度的一致性或符合某些业务需求,可以启用此选项。
  7. PAGE CHECK (页检查模式)
    说明: 此参数控制是否在读取数据库页时进行完整性检查,以确保数据一致性。
    设置影响: 启用页检查会增加数据库的开销,但能提高数据一致性保障。
    设置建议: 如果对数据的可靠性要求较高,可以启用此选项,但会有一定的性能消耗。通常情况下,生产环境下不会开启,除非有严格的可靠性需求。
  8. LOG_SIZE (日志文件大小)
    说明: 设置数据库日志文件的大小。日志文件用于记录事务日志、错误日志等重要信息。
    设置影响: 增大日志文件大小可以减少日志的写入频率,从而提高性能,但也可能增加恢复时的时间成本。较小的日志文件则更便于管理和控制。
    设置建议: 根据数据库的负载情况来决定日志文件的大小。如果数据库的事务量较大,建议设置较大的日志文件。
  9. INSTANCE_NAME (实例名称)
    说明: 该参数用于指定数据库实例的名称。实例名称是数据库的标识符,通常用于在同一台机器上运行多个数据库实例时区分不同的实例。
    设置影响: 实例名称一般不会影响性能,只是一个标识符。必须确保唯一性。
    设置建议: 设置为有意义且唯一的名称,便于区分和管理。

查看日志

docker logs -f dm8

登录数据库

docker exec -it dm8 bash
./opt/dmdbms/bin/disql SYSDBA/SYSDBA001:5236

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com