【星瑞格】SinoDB国产数据库安装初体验及学习指南

今天和大家一起来看看一款来自福建的国产数据库——SinoDB。本人很早就听说过这款数据库,而且星瑞格公司就在同一栋办公楼。虽然以前就已经对这颗国产数据库有一定的了解,并没有真正的去使用一把。随着数据库国产化改造工作的推进,身边的客户开始适配这款数据库,也在咨询技术相关问题。在此,我就分享下这款数据库使用体验以及学习指南,也欢迎大家来体验!

【SinoDB介绍】

星瑞格数据库管理系统——SinoDB具有完全自主知识产权,采用国密算法,提供多层次数据加密加强数据安全,支持高并发、高可用、高性能的数据处理。有意思的是Sino是东方的意思,SinoDB是星瑞格倾力打造的旗舰级属于我们中国的数据库。

【SinoDB安装】

下面,我们来动手安装SinoDB。以Linux 系统上安装星瑞格 SinoDB 数据库软件16.8 版本为例,整个过程相对简单易懂,跟着官方的教程一步步走也基本没问题。

1、提供一台CentOS虚拟机,4G内存,20G磁盘。

# cat /etc/redhat-release 
CentOS Linux release 7.6.1810 (Core)

2、创建 sinodbms 组和用户,并设置用户密码

1. 使用 root 用户执行:
# groupadd sinodbms
2. 创建 sinodbms 用户:
# useradd -g sinodbms -d /home/sinodbms -s /bin/bash -m sinodbms
# passwd sinodbms
3. 创建介质目录 
# mkdir /home/sinodbms/tmp

上传安装介质到服务器并在单独的目录中解压。执行解压命令:tar -xvf 安装包名;

[root@sinodb-server opt]# tar -xvf SinoDB-16.8-TL-linux-x86_64.tar -C /home/sinodbms/tmp/

3. 命令行安装

我们在 root 用户下,进入安装包目录,运行安装命令 ids_install,启动安装程序。

[root@sinodb-server ~]# /home/sinodbms/tmp/ids_install 
1、遇到要求输入enter时,按下enter继续即可
PRESS <ENTER> TO CONTINUE: 
2、遇到Y/N时输入Y即可。
DO YOU ACCEPT THE TERMS OF THIS LICENSE AGREEMENT? (Y/N): 
3、弹出安装位置,可以自己选择或者默认路径。
ENTER AN ABSOLUTE PATH, OR PRESS <ENTER> TO ACCEPT THE DEFAULT: /opt/sindbmsINSTALL FOLDER IS: /opt/sindbmsIS THIS CORRECT? (Y/N): Y安装目录指定到/opt/sindbms
4、选择安装类型,典型安装输入1
5、接下来选择输入服务器名称,以及未被使用的端口,回车则使用默认。
6、根据安装说明书选择是否启用OAT的管理密码,要求是输入no
7、阅读其它许可信息,输入回车或者Y继续进行。

4、创建数据库实例

1、创建一个实例,按回车默认选择1就行。
Create a database server instance?->1- Yes - create a server instance2- No - do not create a server instance
2、确认一下信息有没有错误后继续点击回车即可。
3、等待安装(安装时间约1-2 分钟),进行实例的初始化,直接输入回车(需要等待大致3分钟)。
Ready To Install
----------------InstallAnywhere is now ready to install Sinoregal SinoDB Software Bundle onto 
your system at the following location:/opt/sindbmsPRESS <ENTER> TO INSTALL: 4、实例初始化完成后,则提示不同系统实例的环境变量文件位置。输入回车,进入下一步。
A database server instance was created. If you chose to initialize the 
instance, it is ready to use.You can open a command prompt to an initialized instance by running one of the
following commands at /opt/sindbms, where ol_sinodb1210 is the path or 
filename of the instance.Windows:
ol_sinodb1210.cmdUNIX csh:
source ol_sinodb1210.cshUNIX ksh or bourne:
./ol_sinodb1210.kshPRESS <ENTER> TO CONTINUE: 
5、安装的结果反馈,确认无误,则输入回车,结束安装。
Installation Complete
---------------------
The installation of Sinoregal SinoDB Software Bundle is complete, but some 
errors occurred during the install.Please see the installation log for details.  Click 'Done' to exit the 
installation process.Product install status:
SinoDB Dynamic Server: Successful
SinoDB Client-SDK: Successful
SinoDB JDBC Driver: Successful
OpenAdmin Tool: Successful

5、查看实例的状态

1、设置环境变量
cd /opt/sinodbms/
source ol_sinodb1210.ksh
2、查看实例状态
onstat -(查看实例的状态,如果是online 说明服务状态正常)
$ onstat -
Your evaluation license will expire on 2025-04-15 00:00:00Sinoregal SinoDB Dynamic Server Version 16.8.FC8U0X3TL -- On-Line -- Up 00:09:02 -- 254088 Kbytes
3、登录数据库
dbaccess(进入数据库,出现如下界面则表示数据库已安装成功)
DBACCESS:   Query-language  Connection  Database  Table  Session  Exit
Use SQL query language.------------------------------------------------ Press CTRL-W for Help --------

【SinoDB登录】

1、使用DBeaver客户端登录数据库前,需要先验证8035端口能通。

# telnet 192.168.198.132 8035
Trying 192.168.198.132...
telnet: connect to address 192.168.198.132: Connection refused

2、检查系统防火墙是否关闭。

# systemctl status firewalld.service --防火墙状态
● firewalld.service - firewalld - dynamic firewall daemonLoaded: loaded (/usr/lib/systemd/system/firewalld.service; disabled; vendor preset: enabled)Active: inactive (dead)Docs: man:firewalld(1)
# systemctl stop firewalld.service   --关闭防火墙如果实在要开启防火墙,也可以针对端口开放防火墙例外
firewall-cmd --zone=public --add-port=8030-8060/tcp
将临时更改为永久,永久配置完成后需要立即同步
firewall-cmd --runtime-to-permanent
立即同步永久配置
firewall-cmd --reload

3、增加8035端口配置cat $SINODBMSDIR/etc/sqlhost.ol_sinodb1210

其中,$SINODBMSDIR 是SinoDB的安装目录,ol_sinodb1210是实例名

vi $SINODBMSDIR/etc/sqlhost.ol_sinodb1210
#ol_sinodb1210 onsoctcp sino-dbsever ol_sinodb1210 --》注释掉
dr_sinodb1210 drsoctcp sino-dbsever dr_sinodb1210 
lo_sinodb1210 onsoctcp 127.0.0.1 lo_sinodb1210 
ol_sinodb1210 onsoctcp sino-dbsever 8035  --》新增配置
配置文件修改后,需要重启服务生效
onmode -ky
oninit -vy

4、再次验证8035端口

$ telnet 192.168.198.132 8035
Trying 192.168.198.132...
Connected to 192.168.198.132.
Escape character is '^]'.
^]
Connection closed by foreign host.

5、在官方网站下载DBeaver客户端,选择社区版本。dbeaver-ce-24.0.2-x86_64-setup软件下载成功后,可以直接安装。

下载地址:Download | DBeaver Community

6、SinoDB V16.8 JDBC驱动包下载,com.sinodbms.jdbc.jar和SinoDB-JDBC-1.0.jar两个都可以使用。

驱动下载地址:软件下载 - 软件下载 - Sinoregal Tech Forum

7、打开DBeaver客户端,并在“数据库”-》“驱动管理器”-》“新建”,配置内容可参考如下两张截图。

类名:com.sinodbms.jdbc.IfxDriver
URL模板:jdbc:sinodbms-sqli://{host}:{port}/{database}:SINODBMSSERVER={server}
为了支持不同的数据库字符集,请在驱动中加入如下三个参数:NEWCODESET、CLIENT_LOCALE、DB_LOCALE 。
URL模板:jdbc:sinodbms-sqli://{host}:{port}/{database}:SINODBMSSERVER={server};NEWCODESET=utf8,8859-1,819;DB_LOCALE=en_US.8859-1;CLIENT_LOCALE=en_US.8859-1;

8、在DBeaver客户端,选择“数据库”-》“新建数据库连接”,然后选择上述配置的sino驱动,然后输入对应的机主IP、服务器、数据库/模式、用户名、密码。

9、点击测试连接,可以看到连接测试显示“已连接”。

10、创建测试库

创建表前,记得先切换到指定的数据库。

(1)创建数据库,星瑞格数据库提供了创建数据库操作的SQL语句,如下所示:
create database testdb in datadbs1 with log;(datadbs1 为数据库所在数据空间,请根据实际情况指定)
这条语句创建 BUFFERED 日志模式数据库。
(2)建表,建表是数据库中最常见的操作之一,用于定义数据的结构和属性。星瑞格数据库提供了创建表的SQL语句,如下所示:
CREATE TABLE student (
id INT PRIMARY KEY,
name VARCHAR(20) NOT NULL,
age INT CHECK (age BETWEEN 18 AND 25),
gender CHAR(1) DEFAULT 'M'
);
这条语句创建了一个名为student的表,包含了四个字段,分别是id、name、age、gender。其中,id是主键,name是非空的,age是在18到25之间的,gender是默认为'M'的。
这些都是对数据的一些约束,可以保证数据的完整性和一致性。创建表的时候,还可以指定表所属的数据库,这里指定了testdbs数据库。

如果SQL语句有包含中文,记得在驱动设置中加上字符集,并重新连接。

(1)对表的CRUD操作
CRUD是指对数据的增删改查操作,是数据库的基本功能。星瑞格数据库提供了对表的CRUD操作的SQL语句,如下所示:
●插入数据
INSERT INTO student (id, name, age, gender) VALUES (1, '张三', 20, 'M');
INSERT INTO student (id, name, age, gender) VALUES (2, '李四', 21, 'F');
INSERT INTO student (id, name, age, gender) VALUES (3, '王五', 22, 'M');
这条语句向student表中插入了三条数据,分别是张三、李四、王五的信息。
●查询数据
SELECT * FROM student;
这条语句查询了student表中的所有数据
还可以使用一些条件和排序等功能,来对查询结果进行筛选和排序,例如:
SELECT * FROM student
WHERE gender = 'F'
ORDER BY age DESC;

●更新数据
UPDATE student
SET age = 23
WHERE id = 3;
这条语句更新了student表中id为3的数据,将其年龄修改为23。
●删除数据
DELETE FROM student
WHERE id = 2;
这条语句删除了student表中id为2的数据。

【SinoDB卸载】

1、启动卸载程序,开始卸载SinoDB

[root@sinodb-server ~]# /opt/SinoDB_Software_Bundle/uninstall/uninstall_ids/uninstallids
===============================================================================
Sinoregal SinoDB Software Bundle                 (created with InstallAnywhere)
-------------------------------------------------------------------------------Preparing CONSOLE Mode Uninstallation...===============================================================================
Uninstall SinoDB Software Bundle
--------------------------------About to uninstall SinoDB Software Bundle.In this uninstall process, all SinoDB Software Bundle products in 
/opt/SinoDB_Software_Bundle will be uninstalled.
It is recommended that you first shutdown all SinoDB database server instances
related to this installation prior to uninstalling the product.PRESS <ENTER> TO CONTINUE: --》直接回车===============================================================================
Server Uninstall Options
------------------------Server action:Important: Choosing to remove all databases will remove all database chunks, 
environment files, registry entries, and message log files for all database 
server instances associated with this installation.->1- Retains all databases, but removes all server binaries2- Removes server binaries and all databases associated with themENTER THE NUMBER FOR YOUR CHOICE, OR PRESS <ENTER> TO ACCEPT THE DEFAULT:: 2  --》输入2回车,删除数据库组件和全部数据库

2、SinoDB卸载成功!

===============================================================================
Uninstall Complete
------------------Uninstall is complete for Sinoregal SinoDB Software Bundle.Product uninstall status:
SinoDB Dynamic Server: Failed
SinoDB Client-SDK: Successful
SinoDB JDBC Driver: Successful
OpenAdmin Tool: Successfulrm -rf SinoDB_Software_Bundle

【SinoDB学习指南】

1、SinoDB入门指南

学习资料下载:SinoDB入门指南 - 运维指南 - Sinoregal Tech Forum

(1)了解SinoDB数据库:SinoDB星瑞格数据库管理系统产品白皮书

(2)下载SinoDB试用安装包:SinoDB数据库试用安装包(linux-x86_64位)

(3)SinoDB安装与配置:Linux版SinoDB安装手册

(4)SinoDB数据空间配置

(5)SinoDB连接管理工具:dbaccess / DBeaver / Dbvisualizer

(6)SinoDB数据库基本操作

(7)SinoDB数据类型

2、SinoDB进阶指南

学习资料下载:SinoDB进阶篇 - 运维指南 - Sinoregal Tech Forum

(1)SinoDB数据库常用配置参数:SinoDB常用Onconfig配置参数说明

(2)SinoDB数据库常用监控命令:onstat / oninit / onmode / oncheck

(3)SinoDB数据库导入导出工具:dbschema / unload/load / External table / dbload / onunload/onload

(4)SinoDB数据库统计更新

(5)SinoDB数据库执行计划

(6)SinoDB数据库备份恢复工具:dbexport/dbimport / ontape / onbar

(7)SinoDB数据库用户权限

【参考资料】

星瑞格数据库-国产数据库-数据库与数据库安全软件与服务提供商

Sinoregal Tech Forum

软件下载 - 软件下载 - Sinoregal Tech Forum

星瑞格体验官——SinoDB V16.8的使用初体验

来自星瑞格体验官——“初见”SinoDB

星瑞格体验官——SinoDB V16.8(操作篇)

欢迎大家体验!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/645.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

vue+springboot实现聊天功能

前言 在我的项目中&#xff0c;突然有种想法&#xff0c;想实现聊天功能&#xff0c;历经一段时间终于做出来了&#xff1b;那么接下来会讲解如何实现&#xff0c;这篇文章只会实现最基础的逻辑&#xff0c;实时获取对方聊天记录&#xff0c;话不多说&#xff0c;我们就开始吧…

吹爆,一款实用的个人IT工具箱

作为一名开发人员&#xff0c;我们在日常工作和学习中常常需要使用一系列小工具&#xff0c;如JSON格式化、JSON转表格、当前时间戳、XML格式化、SQL格式化、密码生成以及UUID生成等。通常情况下&#xff0c;我们会在网上搜索各种在线工具来满足这些需求。 然而&#xff0c;这…

【简单介绍下单片机】

&#x1f308;个人主页: 程序员不想敲代码啊 &#x1f3c6;CSDN优质创作者&#xff0c;CSDN实力新星&#xff0c;CSDN博客专家 &#x1f44d;点赞⭐评论⭐收藏 &#x1f91d;希望本文对您有所裨益&#xff0c;如有不足之处&#xff0c;欢迎在评论区提出指正&#xff0c;让我们共…

大学生简历大赛演讲稿(6篇)

大学生简历大赛演讲稿&#xff08;6篇&#xff09; 以下是六篇大学生简历大赛演讲稿的范文&#xff0c;供您参考&#xff1a; 范文一&#xff1a;展现真我&#xff0c;点亮未来 尊敬的评委、亲爱的同学们&#xff1a; 大家好&#xff01; 今天&#xff0c;我站在这里&#xf…

【C++】:C++关键字,命名空间,输入输出,缺省参数

目录 一&#xff0c;C关键字(C98)二&#xff0c;命名空间2.1 命名冲突2.2 关键字namespace2.2.1 命名空间中可以定义变量/函数/类型2.2.2 命名空间可以嵌套2.2.3 同一个工程中允许存在多个相同名称的命名空间,编译器最后会合成同一个命名空间中。 2.3 命名空间的使用2.3.1 指定…

剑指offer之牛客与力扣——前者分类题单中的题目在后者的链接

搜索 [4.12完成] JZ1 LCR 172. 统计目标成绩的出现次数 JZ3 153. 寻找旋转排序数组中的最小值 JZ4 LCR 014. 字符串的排列 JZ5 LCR 163. 找到第 k 位数字 400 动态规划 [4.15完成] JZ2 LCR 161. 连续天数的最高销售额 53 JZ3 LCR 127. 跳跃训练 70 JZ4 LCR 126. 斐波那契…

gemini国内怎么用

gemini国内怎么用 Google Gemini 作为一个尚处于研发阶段的大型语言模型&#xff0c;其具体功能和性能尚未公开&#xff0c;因此无法对其好用程度做出明确评价。 然而&#xff0c;基于 Google 在人工智能领域的领先地位和技术实力&#xff0c;我们可以对其潜力进行一些推测&a…

大型网站系统架构演化实例_4.数据库读写分离

1.数据库读写分离 网站在使用缓存后&#xff0c;使对大部分数据读操作访问都可以不通过数据库就能完成&#xff0c;但是仍有一部分操作&#xff08;缓存访问不命中、缓存过期&#xff09;和全部的写操作都需要访问数据库&#xff0c;在网站的用户达到一定规模后&#x…

通过实例学C#之ArrayList

介绍 ArrayList对象可以容纳若干个具有相同类型的对象&#xff0c;那有人说&#xff0c;这和数组有什么区别呢。其区别大概可以分为以下几点&#xff1a; 1.数组效率较高&#xff0c;但其容量固定&#xff0c;而且没办法动态改变。 2.ArrayList容量可以动态增长&#xff0c;但…

ros1中python3包调用自定义.py文件

ros中python包相互import不成功问题 问题解决办法 问题 在ros工程中&#xff0c;运行python文件难以直接import自己写的py文件&#xff0c;相互之间无法import&#xff0c;但是在python3虚拟环境python *.py文件就可以正常运行&#xff01; 注意这里还有个问题&#xff0c;我…

❤️‍FlyFlow工作流周更来咯~~

FlyFlow 借鉴了钉钉与飞书的界面设计理念&#xff0c;致力于打造一款用户友好、快速上手的工作流程工具。相较于传统的基于 BPMN.js 的工作流引擎&#xff0c;我们提供的解决方案显著简化了操作逻辑&#xff0c;使得用户能够在极短的时间内构建定制化的业务流程&#xff0c;即便…

记录汇川:五个ST案例

起保停&#xff1a; 简单数学教学&#xff1a; 数据查找&#xff1a; 按钮检测&#xff1a; 数据堆栈&#xff1a;

wiringpi库的应用 -- sg90 定时器 oled

sg 90舵机: 接线: VCC -- 红 GND -- 地 信号线 -- 黄 -- pwm 定时器: 先玩定时器: sg90 需要的pwm波需要定时器输出&#xff0c;so我们得先来玩一下定时器 分析&#xff1a;实现定时器&#xff0c;通过itimerval结构体以及函数setitimer产生的信号&#xff0c;系统…

快手本地生活服务商系统怎么操作?

当下&#xff0c;抖音和快手两大短视频巨头都已开始布局本地生活服务&#xff0c;想要在这一板块争得一席之地。而这也很多普通人看到了机遇&#xff0c;选择成为抖音和快手的本地生活服务商&#xff0c;通过将商家引进平台&#xff0c;并向其提供代运营服务&#xff0c;而成功…

深入探讨虚拟现实中的新型安全威胁:“盗梦攻击”及其防御策略

随着虚拟现实&#xff08;VR&#xff09;技术的飞速发展&#xff0c;用户体验达到了前所未有的沉浸水平&#xff0c;但也暴露在一系列新的安全威胁之下。本文着重介绍了近期出现的一种高度隐秘且影响深远的攻击手段——“盗梦攻击”。这一概念由芝加哥大学的研究人员提出&#…

前端打包webpack vite

起步 | webpack 中文文档 | webpack中文文档 | webpack中文网 npm run build 1webpack: mkdir webpack-demo cd webpack-demo npm init -y npm install webpack webpack-cli --save-dev vite : 快速上手 | Vue.js

【Entity Framework】闲话EF中批量配置

【Entity Framework】闲话EF中批量配置 文章目录 【Entity Framework】闲话EF中批量配置一、概述二、OnModelCreating中的批量配置元数据API的缺点 三、预先约定配置忽略类型默认类型映射预先约定配置的限制约定添加新约定替换现有约定约定实现注意事项 四、何时使用每种方法进…

游戏登录界面制作

登录界面制作 1.导入模块和初始化窗口 import subprocessimport tkinter as tkimport picklefrom tkinter import messageboxwindow tk.Tk()window.title(Welcome)window.geometry(450x300) 导入必要的模块&#xff0c;并初始化了主窗口window&#xff0c;设置了窗口的标题和…

修改taro-ui-vue3的tabs组件源码增加数字标签

需求&#xff1a;taro-ui-vue3的tabs组件上增加数字标记 步骤一&#xff1a;node_modules文件夹下找到taro-ui-vue3/lib/tabs/index.js 把173行的这一段替换成下面这段&#xff0c;然后写上样式 default: () > item.number ? [h(View, {class: at-tabs__item_in}, {defau…

Unity导出package

C#代码导出后为一个dll&#xff0c;原有的不同平台的库不变。 以下操作均在build PC 平台下操作。 1.在要导出的文件夹下建assembly definition (Any platform) 2.将项目文件夹下的\Library\ScriptAssemblies中的相应assembly definition的dll复制到要导出的文件夹下 3.在uni…