·创建一个dmdba的用户用于后续数据库操作,防止root权限过高造成隐患。
·用vi编辑器修改文件最大打开数。
代码如下:
dmdba soft nice 0
dmdba hard nice 0
dmdba soft as unlimited
dmdba hard as unlimited
dmdba soft fsize unlimited
dmdba hard fsize unlimited
dmdba soft nproc 65536
dmdba hard nproc 65536
dmdba soft nofile 65536
dmdba hard nofile 65536
dmdba soft core unlimited
dmdba hard core unlimited
dmdba soft data unlimited
dmdba hard data unlimited
soft代表软限制,是当前生效值,可以随时修改,但不能超过hard值;hard代表硬限制,是系统允许的最大上限,只有root用户能调高。
nice 是进程优先级,设置为0表示以默认优先级运行;
as是虚拟内存,设置为无限制,让数据库按需取用;
fsize是文件大小,;设置为无限制,允许数据库生成任意大小的数据文件,避免因系统限制导致写数据失败;
nproc是最大用户进程数,设置为65536,可以应对数据库在复杂查询或高并发时产生的多个工作线程;
nofile是最大打开文件数,设置为65536,满足数据库同时读取数据文件、日志文件等的需要;
core是核心转储文件大小,设置为无限制,可以生成完整的崩溃信息,方便定位问题;
data是数据段大小,设置为无限制,让数据库按需取用。
·参数配置完重启服务(切换到dmdba用户重新登录)。
使用root用户创建实例保存目录、归档保存目录、备份保存目录,同时将新建的路径目录权限的用户修改为 dmdba,用户组修改为 dinstall。
·挂载安装镜像,注意操作系统和电脑CPU版本。
·切换到dmdba用户,在/mnt目录下执行安装命令。
·按需求选择语言、时区、安装类型和安装目录,这里默认在/home/dmdba/dmdbms。
完成安装的结果如下图所示,按照提示切换到root用户执行以下命令行。
/home/dmdba/dmdbms/script/root/root_installer.sh
切换到dmdba用户,进入安装目录下的bin目录使用dminit命令初始化数据库实例,可以通过 ./dminit help 可以查看初始化时的所有参数及含义,一些关键配置如下。
·PATH:初始数据库存放的路径,一般放在当前目录的 /dmdata/data 下,确保 dmdba 有写权限
·DB_NAME:数据库名,自定义
·INSTANCE_NAME:实例名,自定义
·PORT_NUM:监听端口号,要未被占用
·PAGE_SIZE:页大小,单位 K,可选 4, 8, 16, 32
·EXTENT_SIZE:簇大小,单位页,可选 16, 32, 64
·CASE_SENSITIVE:大小写敏感,可选 Y/N 或 1/0
·CHARSET:字符集,0=GB18030, 1=UTF-8
·SYSDBA_PWD:SYSDBA用户密码,要符合密码策略
·SYSAUDITOR_PWD:SYSAUDITOR用户密码,要符合密码策略
·LOG_SIZE:日志文件大小,单位 M,256~2048
数据库创建完成后要切换到root用户进入安装目录(/home/dmdba/dmdbms/script/root/)执行
./dm_service_installer.sh -t dmserver -dm_ini /dmdata/data/DMOA/dm.ini -p DMOA
命令,该命令是为DMOA(库名)数据库注册DmServiceDMOA服务。
切换到dmdba用户进入安装目录下的bin目录开启服务
使用disql命令登录使用数据库(用户名/密码@设备:端口)。
登录成功会显示SQL>,然后就可以开始写SQL语句。
创建表空间、用户。
CREATE TABLESPACE TS_DMOA
DATAFILE '/dmdata/data/DMOA/TS_DMOA.DBF' SIZE 64
AUTOEXTEND ON NEXT 100 MAXSIZE 2048;
CREATE USER DMOA IDENTIFIED BY "DMdatabase8"
DEFAULT TABLESPACE TS_DMOA;
GRANT RESOURCE TO DMOA;
创建表格。
CREATE TABLE USERS (
USER_ID INT PRIMARY KEY,
USER_NAME VARCHAR(50) NOT NULL,
PHONE VARCHAR(20) NOT NULL
);
向表格插入数据。
INSERT INTO USERS (USER_ID, USER_NAME, PHONE)
VALUES (1, '张三', '138000001111');
查询表格数据。
SELECT * FROM USERS;
文章
阅读量
获赞
