前言:
此时咱们对“mysql重新初始化数据库”都比较着重,小伙伴们都想要学习一些“mysql重新初始化数据库”的相关知识。那么小编同时在网摘上网罗了一些对于“mysql重新初始化数据库””的相关内容,希望我们能喜欢,同学们快快来学习一下吧!为什么要重新初始化数据库实例呢?
可能一开始初始化的实例的配置没配置好,大小写敏感、字符集编码、长度以字符为单位都配置不对,导致的后果是从mysql迁移数据到dm时,时不时会出现字符串截断的问题,这个问题就是因为初始化的实例时的长度以字符为单位配置成了否。
1.字符集不是UTF-8,请修改字符集或创建实例时设置CHARSET=1
2.需设置大小写不敏感,创建实例时设置CASE_SENSITIVE=0
3.需设置长度以字符为单位,创建实例时设置LENGTH_IN_CH
AR=1
4.页大小(page_size)默认8k,想调整为32k,只能通过重新初始化修改
重新初始化实例怎么操作呢?第一步、删除实例(在root账号下执行)
/home/dmdba/dmdbms/script/root/dm_service_uninstaller.sh -n DmServiceDMSERVER
备注:DmServiceDMSERVER 是实例服务的名称,除非改过名,一般情况是这个名称,改过名称又忘记名的可以到 cd /usr/lib/systemd/system 或者 cd /etc/systemd/system搜索查看Dm开头的,有Service的有哪些。一般情况是这个名称DmServiceDMSERVER.service。
第二步、删除数据库目录
进入/home/dmdba/dm/data 删除DAMENG目录,同时也要一并删除创建的DBF文件。
cd /home/dmdba/dm/datarm -rf ./*cd ..lsrm -rf aggr.DBF bpmdb.DBF
备注:DAMENG是初始化时数据库名称,默认存放目录是/home/dmdba/dm/data,已创建的DBF文件也要一并删除。
第三步、初始化实例
cd /home/dmdba/dmdbms/binsu dmdba ./dminit help
./dminit path=/home/dmdba/dm/data/ DB_NAME=DAMENG INSTANCE_NAME=DMSERVER PORT_NUM=5236 CASE_SENSITIVE=0 CHARSET=1 PAGE_SIZE=32 EXTENT_SIZE=32
初始化参数说明:
PATH: 初始数据库存放的路径
DB_NAME:数据库名,默认DAMENG
INSTANCE_NAME:实例名,默认DAMENG
PORT_NUM: 监听端口,默认5236
CASE_SENSITIVE:标识符大小写敏感。当大小写敏感时,小写的标识符应用""括起,否则被系统自动转换为大写;当大小写不敏感时,系统不会转换标识符的大小写,系统比较函数会将大写字母全部转为小写字母再进行比较。取值:Y、y、1 表示敏感;N、n、0 表示不敏感。缺省值为 Y。可选参数。此参数在数据库创建成功后无法修改,可通过系统函数 SF_GET_CASE_SENSITIVE_FLAG()或 CASE_SENSITIVE()查询设置的参数置。
CHARSET: 字符集选项。取值范围 0、1、2。0 代表 GB18030,1 代表 UTF-8,2 代表韩文字符集 EUC-KR。缺省值为 0。可选参数。此参数在数据库创建成功后无法修改,可通过系统函数 SF_GET_UNICODE_FLAG()或 UNICODE()查询设置的参数置。
PAGE_SIZE:数据文件使用的页大小。取值范围 4、8、16、32,单位:KB。缺省值为 8。可选参数。选择的页大小越大,则 DM 支持的元组长度也越大,但同时空间利用率可能下降。数据库创建成功后无法再修改页大小,可通过系统函数 SF_GET_PAGE_SIZE()获取系统的页大小。
EXTENT_SIZE:数据文件使用的簇大小,即每次分配新的段空间时连续的页数。取值范围 16、32、64。单位:页数。缺省值为 16。可选参数。数据库创建成功后无法再修改簇大小,可通过系统函数 SF_GET_EXTENT_SIZE()获取系统的簇大小。
更多 dminit 参数解释可参考达梦数据库安装目录下 doc 目录中《DM8_dminit 使用手册》。
第四步、注册服务
切换到root用户,进入/home/dmdba/dmdbms/script/root目录,执行命令注册服务。
su rootcd /home/dmdba/dmdbms/script/root./dm_service_installer.sh -t dmserver -dm_ini /home/dmdba/dm/data/DAMENG/dm.ini -p DMSERVER设置服务开机自启动,并开启服务,查看服务状态
systemctl enable DmServiceDMSERVERsystemctl start DmServiceDMSERVERsystemctl status DmServiceDMSERVER第四步、登录数据库,创建表空间和用户
切换使用dmdba用户,进入/home/dmdba/dmdbms/bin目录下
到这里数据库已经重新完成初始化,并根据项目需要创建了表空间和新用户,可以继续进行数据库的迁移啦。
标签: #mysql重新初始化数据库