达梦数据库varchar改为number报错
~
关注
2021-09-13 16:53:28

果味怪叔叔~ 
码龄3年
关注
在达梦数据库的日常使用中我们可能会遇到很多问题,今天我将自己近期常遇到的错误进行总结汇总。
1、连接数据库报错:网络通信异常
解决方法:
数据库连接报网络通信异常原因通常只有两个,数据库服务启动异常或者数据库服务器网络通信异常
1 登录数据库服务器检查数据库进程是否存在ps –ef|grep dmserver
2 检查数据库服务器网络通信ping数据库服务器地址
3 检查数据库服务器数据库端口号通信是否正常telnet数据库服务器ip数据库端口号
2、数据库启动报错:dmserver startup failed, code = -104 [Invalid INI file]
解决方法:
数据库正常启动需要有数据文件,该类报错一般存在如下两方面原因:
1)数据文件不存在;
2)启动数据库的用户没有读写数据文件的权限。
3、数据库连接报错:用户名或密码错误
解决方法:
此类错误只需输入正确的密码即可。
如果忘记密码,以管理员登录数据库后修改该用户的密码:
alter user USERNAME identified by “PASSWD”
前面的USERNAME是用户名,后面的PASSWD是密码。
需要注意用户名不区分大小写,密码区分大小写。
4、登录数据库时报错“用户已被锁”
解决方法:
使用SYSDBA登录到数据库后,鼠标右键在对应“登录”名上单击“解锁”,此时“登录名”上的小锁符号消失;
或使用SYSDBA登录后手动调用存储过程call SP_UNLOCK_LOGIN(‘登录名‘)解锁;
通常是用户多次尝试登录但密码错误导致,有时候应用系统配置了数据库连接池,应用启动时初始化连接池会多次连接数据库,如用户名密码不对,则很快就会锁住该用户。
5、执行update,insert,delete语句完成后程序或其他数据库连接查不到改变后的数据
解决方法:
造成此类现象的原因单条sql或者sql脚本执行完上述语句后没有进行commit操作导致。
数据库的执行单元是事务,事务如果没有commit或者rollback,仍处于未完成状态,根据事物ACID特性中的隔离性,其他数据库连接无法看到未完成的数据库事务对数据的改变
6、数据库语句长时间不能执行完成,类似卡住的状态
解决方法:
1)对于select等查询语句,需要对sql语句进行分析优化,提升查询效率
2)update,insert,delete语句执行慢可能的原因为数据库阻塞导致,需要查找出导致阻塞的语句,并对语句进行处理
7、执行语句报错“字符串截断”
解决方法:
修改的数据,超过了数据库中字符类型(VARCHAR,CHAR)定义的长度,如VARCHAR(64),插入的数据字节长度超过64就会报错
8、执行语句报错“数据溢出”
解决方法:
修改的数据,超过了数据库中数值类型(int,number,decimal)定义的长度,如decimal(6,2),插入1000000,插入的数据超过定义的范围就会报错。
9、执行语句报错 “不能修改或删除聚集索引的列”或“试图删除聚集主键”
解决方法:
若想对有聚聚索引的列进行修改,可以重建表,或者重新在别的列上建立一个聚集索引。该列上的索引就变成非聚集了,就可以修改了。
很多时候是因为创建表时指定的主键被自动创建为聚集索引了,可以修改ini参数,将PK_WITH_CLUSTER设为0,则默认创建主键时为非聚集型。
数据库包括MySQL,MySQL服务器只要作用就是这位一个服务器;
MYSQL短小精悍,容易上手,操作简单,免费供用的。相对其它数据库有特色又实用的语法多一些。SQL怎么也算是大型数据库,稳定,能做一般大系统的数据仓库,运行速度明显比MYSQL快N多。
缺点分析:MYSQL难担当大系统的数据仓库,运行速度慢,不够稳定,有掉线的情况。SQLSERVER价格贵,使用起来比MYSQL要难一些,毕竟东西大了说道多点。
MySQL自己有文字界面客户端,当然配对MYSQL有专业的客户端软件,各种操作真的是很方便的。SQLSERVER就用自带的查询分析器登录了,两者的前提是数据库服务都带打开,而且你得知道安装时的用户名密码。
ISQL 用法1:disql -h 显示disql版本信息和帮助信息
DISQL 用法2:disql [ [<option>] [{logon | /nolog}] [<start>] ]
<option>:-S 隐藏模式,隐藏<SQL>标识符
<logon> : {<username>[/<password>][@<connect_identifier>] }
<connect_identifier>为{[<SERVER>][:<PORT>][#<sslpath>]}
<start> : `<filename>[<parameter> ] 运行disql脚本
/NOLOG 选项能在未登录DM服务器的情况下启动disql
存储是后端服务器比较基础的功能,一般来说,可以存储在服务器的文件系统中,然后数据库中只需要存储url就可以了。另外一种办法是,将通过Base64编码后存储到数据库中,数据库中存储的base64编码的二进制可以使用TEXT(mysql)类型。
使用客户端连接其他服务器(A连接B)上的达梦数据库,我的是报string index out of range:-51,之后排除各种原因,得出两台机器上的达梦数据库版本不一致导致连接报了“string index out of range:-51”,B的版本要高,之后在其他机器上安装了高版本的数据库连接成功了。
其实在使用客户端连接报错时,也可以用命令行的方式连接达梦数据库。
就是不知道你们的是怎么解决的。
安装达梦数据库linux版的。
进入达梦数据库所在的目录,输入命令 /达梦数据库的名称。如 /DMInstallbin即可调出达梦数据库的图形安装界面(前提是LINUX服务器安装了图形界面)如下图
点击OK,进入版本信息,点击下一步
输入序列号,序列号在sntxt文件里,可用以下命令中任决一种查看文本文件的内容。
less 、 more 、cat等等。如输入 less sntxt,查看到了序列号。输入。再点击下一步。
选择安装方式,选典型安装,这样会装上所有的包(省事)
指定达梦数据库所安装的位置,opt DMDBMS是其默认位置,但要注意数据库是会不断增长的,所以事先装在一个容量大的分区,避免日后自己麻烦。改为 /usr/DMDBMS,因为安装LINUX时,我的/usr分区容量给的最大。
9.安装完成后会进入创建数据库界面,如下图,点击创建数据库
安装完成后,图形界面“应用程序”下会多出达梦数据库的选项且桌面会多出一个达梦的文件夹的快捷方式(而红旗linux系统则只有在应用程序下多出达梦数据库的选项),控制界和管理界面都在里面。默认的SYSDBA用户的初始密码为SYSDBA。
备注:LINUX中的“应用程序”类似于WINDOWS的“开始”菜单。
至于在达梦数据库中建用户、数据库、表,备份还原工具等都是图形化界面几乎和ORACLE差不多(完全仿照ORACLE),所以操作和ORACLE差不多,在此不再累叙。
最后补充一点最重要的,即JDK和TOMCAT等程序基本上都是网上下的。有些同事由于不会用LINUX,所以下载时就用的windows下载的。这就涉及到如何将这个widows中的文件(夹)拷到linux系统中去的问题。
有如下几种办法解决:
1. 通过网络,走SMB协议去拿,这要求LINUX系统装有SAMBAR客户软件包(默认都已经装了),步骤:
(1) 先在WINDOWS系统上把文件夹共享(最好用全英文文件名),用户必须要密码(WINDOWS时默认要有密码才能网络访问,除非改策略或注册表)
(2) 在linux服务器终端界面,即全字符界面(命令界面)上输入
smbmount //windows主机的IP/共享的目录名 /要挂载的linux目录 –o username=windows机器上有权限的用户名 ,回车,提示入密码时输密码
例 smbmount //19216813153/hongqi /mnt –o username=administraotr
(意思是把IP为19216813153这台机器的hongqi这个共享文件夹挂载到此LINUX机器上的/usr/mnt目录,访问本机的/mnt目录就是访问19216813153机器的hongqi目录。
用cp命令把需要的JDK和TOMCAT程序复制到本机的/usr目录下来
命令如下,先进入/mnt目录,ls看一下文件的名字。
cp –R jakarta-tomcat-5028targz”空一格" /usr
cp –R jdk-1_5_0_15-linux-i586-rpmbin /usr
达梦数据库是国产数据库
类似Oracle数据库
达梦数据库linux下安装教程
亲参考此教程安装
希望可以帮助你 请采纳
一、DM
软件名称:达梦数据库(DM)。
开发商:武汉华工达梦数据库有限公司。
软件描述:
达梦数据库具有如下技术特色:支持多个平台之间的互联互访、高效的并发控制机制、有效的查询优化策略、灵活的系统配置、支持各种故障恢复并提供多种备份和还原方式。
具有高可靠性、支持多种多媒体数据类型、提供全文检索功能、各种管理工具简单易用、各种客户端编程接口都符合国际通用标准、用户文档齐全。
二、OpenBASE
软件名称:OpenBASE。
开发商:东软集团有限公司。
软件描述:
主要包括OpenBASE多媒体数据库管理系统、OpenBASEWeb应用服务器、OpenBASEMini嵌入式数据库管理系统、OpenBASESecure安全数据库系统等产品。
所有的这些产品涵盖了企业应用、Internet/Intranet、移动计算等不同的应用领域,具有不同的应用模式。
形成了OpenBASE面向各种应用的全面的解决方案。多媒体数据库管理系统OpenBASE是OpenBASE产品系列的核心和基础,其它的产品都是在其基础上,根据各自应用领域的不同特点发展、演变而成的。
三、OSCAR
软件名称:神舟OSCAR数据库系统。
开发商:北京神舟航天软件技术有限公司。
软件描述:
神舟OSCAR数据库系统基于Client/Server架构实现,服务器具有通常数据库管理系统的一切常见功能,此外还包括一些有助于提高系统对工程数据支持的特别功能,而客户端则在提供了各种通用的应用开发接口的基础上,还具有丰富的连接、操作和配置服务器端的能力。
提供与Oracle、SQLServer、DB2等主要大型商用数据库管理系统以及TXT、ODBC等标准格式之间的数据迁移工具。
四、KingbaseES
软件名称:金仓数据库管理系统KingbaseES。
开发商:北京人大金仓信息技术有限公司。
软件描述:
交互式工具ISQL;图形化的数据转换工具;多种方式的数据备份与恢复;提供作业调度工具;方便的用户管理;支持事务处理;支持各种数据类型;提供各种操作函数;提供完整性约束;支持视图;支持存储过程/函数;支持触发器。
五、iBASE
软件名称:iBASE。
开发商:北京国信贝斯软件有限公司。
软件描述:
包括五个部分:iBASEReliaxServer全文检索服务器。
iBASEWeb网上资源管理与发布系统。
iBASEIndexSystem文文件管理与发布系统。
iBASEWebrobot网络资源采编发系统。
iBASEDMC数据库管理中心。
扩展资料:
国产最新商业数据库系统:
一、阿里的数据库系统
软件名称:OceanBase&PolarDB
官方称为“完全自主研发的金融级分布式关系数据库”。下面是其官网的介绍:OceanBase对传统的关系数据库进行了开创性的革新。
在普通硬件上实现金融级高可用,在金融行业首创“三地五中心”城市级故障自动无损容灾新标准,同时具备在线水平扩展能力,创造了4200万次/秒处理峰值的纪录(注:当时TPS官宣为256w)。
现在OceanBase的版本已经2x了,OceanBaseTPC-C的评测刷遍了朋友圈,TPS达到了100w(6088wtpmc),榜单第一。
二、腾讯的数据库系统
软件名称:TDSQL
其官网简介:分布式数据库(TencentDistributedSQL,TDSQL)是腾讯打造的一款分布式数据库产品,具备强一致高可用、全球部署架构、分布式水平扩展、高性能、企业级安全等特性。
同时提供智能DBA、自动化运营、监控告警等配套设施,为用户提供完整的分布式数据库解决方案。
目前TDSQL已经为超过500的政企和金融机构提供数据库的公有云及私有云服务,客户覆盖银行、保险、证券、互联网金融、计费、第三方支付、物联网、互联网、政务等领域。TDSQL亦凭借其高质量的产品及服务,获得了多项国际和国家认证,得到了客户及行业的一致认可。
三、华为的数据库系统
软件名称:GaussDB
全球首款AI-Native数据库,内部有100、200、300多个版本,应该是基于PostgreSQL开发的。在国内,可能除了阿里,就到华为的团队了(高斯实验室)。和不少高校建立了合作。
0条评论