mysql数据库迁移到瀚高数据库,包含数据迁移、sql语法、服务启动、部署、tomcat问题整理
文章目录
- 1.数据库迁移
- 2.数据库设置主键自增
- 2.1 数据库字段问题
- 2.2 存在即更新
- 2.3 清空数据表
- 2.4 瀚高数据库查询过程中显示转换
- 2.5 mybatis插入一条数据返回自增的主键值
- 2.6 瀚高数据库服务无法启动
- 3. 部署
- 4. tomcat出问题
- 5. 2022/4/24
- 5.1 数据库备份
- 5.2 数据库恢复
1.数据库迁移
我目前使用的是5.6.5版本瀚高数据库
关于瀚高数据库的数据迁移,我目前只找到了两个方案,
1.只能用专门的迁移工具,csdn中50c币的那个,该工具可以实现其他数据库(这个其他不包含瀚高自己)迁移到瀚高数据库
2.瀚高数据库自带的迁移工具,从oracle迁移到瀚高(可能有其他的,我可能没发现?)
2022/4/24原帖更新插入新方法
经过一番搜索,发现了新的方式,即为数据库备份 数据库恢复
2.数据库设置主键自增
数据库迁移之后,需要加主键自增,因为瀚高数据库不像mysql数据库的navcat一样点一下就自增了
(68条消息) postgresql常用函数>序列函数nextval():设置主键自动增长_野生汪嘤嘤嘤的博客-CSDN博客_default nextval
CREATE SEQUENCE 表名_主键_seq START WITH 1 --1为起始idINCREMENT BY 1 --每次自增NO MINVALUE NO MAXVALUE CACHE 1;
alter table 表名 alter column id set default nextval('表名_主键_seq');
//数据库设置修改主键起始值:
alter sequence if exists 表名_主键_seq restart with 3 cache 1;
2.1 数据库字段问题
有些超级大的数字必须在sql语句中转为bigint
(69条消息) sum(CHARACTER VARYING) 不是唯一的_麻花2013的博客-CSDN博客
非mysql数据库的一些问题
sum(cast(字段名 as int))
2.2 存在即更新
某个sql语法,在瀚高中的修改
1、如果数据库存在一条记录,则将新插入的值,作为更新
2、如果没有这样一条记录,则新增。
(70条消息) PostgreSQL数据库如果不存在则插入,存在则更新_旷野孤星的博客-CSDN博客_pgsql 存在则更新
INSERT INTO test_postgre(id,name,InputTime,age)
VALUES('1','postgre','2018-01-10 22:00:00',24)
ON conflict(id)
DO UPDATE SET name = 'postgreOk', InputTime ='2018-02-22 12:00:00'
2.3 清空数据表
在 mysql中,只需要执行:
TRUNCATE table_name;
即可,数据会情况,而且自增id也会变回0;
但在 postgresql 则稍有不同,因为 postgresql 的自增id是通过序列 sequence来完成的,
所以情况数据后,还需要还原序列 sequence:
TRUNCATE bigtable, fattable RESTART IDENTITY;
2.4 瀚高数据库查询过程中显示转换
一个莫名其妙的错误
SELECT person.name, holidays.num_weeks FROM person, holidays WHERE person.current_mood = holidays.happiness; ERROR:operator does not exist: mood = happiness
如果真的需要那么做,可以要么自定义运算符,要么为查询添加显式转换:
SELECT person.name,holidays.num_weeks FROM person,holidays WHERE person.current_mood::text=holidays.happiness::text;
2.5 mybatis插入一条数据返回自增的主键值
mybatis插入一条数据返回自增的主键值_smile-yan的博客-CSDN博客_mybatisplus插入一条数据返回主键
<insert id="addTaskLogs" parameterType="com.taiyu.dms.entity.TaskLog" useGeneratedKeys="true" keyProperty="id" keyColumn="id">insert into taskLog(taskName,taskType,taskCycle,startTime,mxTable) values(#{taskname},#{tasktype},#{taskcycle},#{starttime},#{mxtable})</insert>
七种MYSQL插入数据后返回自增主键ID的方法_童话ing的博客-CSDN博客_mysql 插入返回主键.
2.6 瀚高数据库服务无法启动
这个解决方案好像是有一个人的综合方案
瀚高数据库win版启动客户端连接提示拒绝连接,是否在主机xxx运行且准备接受在端口5866_星月情缘02的博客-CSDN博客_瀚高数据库启动不了
3. 部署
我们对于部署的操作是 打war包 放在tomcat的webapps下
前端是vue项目 也放在webapps下
vue项目中需要写一个config.js (里边只有这一句话)
window_global_config = {baseURL:'http://后端ip地址:后端端口号/后端项目名'
}
ip地址为后端服务器地址/后端本机地址
端口号(此处对应的是项目的端口号–在项目的application.properties中配置的端口号)
后端项目名为你放在webapp下的war包名(这个名是在resources下的配置文件中定义的)
放完之后
在bin目录中 启动startup.bat
4. tomcat出问题
tomcat路径下 logs文件夹 找出时间最近的日志,拉到最下查看问题
常见错误
password authentication failed for user "highgo" --连接数据库的密码错误
relation "表" does not exist
这个错误可以由多种因素引起1.权限什么的————查阅后……我没看懂,2.瀚高数据库的库名问题————我把我的库名改成highgo,解决了
出现过c3p0错误
原因是我写的某个定时器引用了低版本的c3p0 但我为了连接瀚高使用了高版本的c3p0
最后解决方案是在定时器中的依赖中排除低版本的
不过我觉得关于这个问题的找出的方式很值得学习
发现错误的方式是,
1.tomcat报错看tomcat logs ,
2.maven清空重新导包,发现下载了两个包,
3.拆war包,war包中有俩c3p0,
4.尝试在项目中找低版本的c3p0的来源(找不到)
5.看依赖树,发现定时器的某个依赖引用了低版本c3p0依赖,
6.尝试只用低版本的c3p0能否运行(并不能),
7.使用语法排除低版本,只用高版本(√)
(这个错误找大佬查,查了1个多小时,一直到自己手动把war包拆开,挨个看依赖这才发现问题)-----这个错误找的是最累的,每次尝试都要重新清缓存,打包,部署,启动,再测试
5. 2022/4/24
5.1 数据库备份
在C:\highgo\database\5.6.5\bin下进入cmd
-h localhost 本地数据库地址
-p 5866 端口号
-U highgo 用户(瀚高数据库用户,密码)
-d highgo 瀚高中的数据库名字
-n baozhen 瀚高中的数据库的模式名
testdb20220424.hgdmp 数据库的备份的储存的sql类型的文件名
pg_dump -h localhost -p 5866 -U highgo -d highgo -n baozhen -v -Fc > testdb20220424.hgdmp
运行后的数据储存在bin目录下
5.2 数据库恢复
将文件拖进服务器或者部署的机器中
pg_restore -h 127.0.0.1 -p 5866 -U highgo -d highgo -v testdb20220424.hgdmp
注意:该方法未测试,不过感觉没太大问题
mysql数据库迁移到瀚高数据库,包含数据迁移、sql语法、服务启动、部署、tomcat问题整理相关推荐
- 信创环境下三个开源数据库:SQLite、MariaDB(MySQL)和postgreSQL(瀚高数据库免费版)基本操作
在信创环境下,常用的免费数据库主要是:SQLite.MariaDB(MySQL)和postgreSQL(瀚高数据库免费版),可以在一些产品中内嵌使用. SQLite作为单文件数据库,不需要后台服务,预 ...
- 瀚高数据库php连接,瀚高数据库----基本函数
|| 字符串拼接 语法 string || string 示例 'Post' || 'greSQL' -- 返回PostgreSQL length() 字符串的长度 语法 length(string) ...
- 瀚高数据库和mysql区别,MySQL数据库迁移瀚高数据库
1.瀚高数据库安装 下载Highgo Database安全版rpm包并上传至服务器,使用如下命令进行安装 rpm -ivh hgdb5.6.4-enterprise-rhel7.x-x86-64-20 ...
- MySQL数据库迁移瀚高数据库
1.瀚高数据库安装 下载Highgo Database安全版rpm包并上传至服务器,使用如下命令进行安装 rpm -ivh hgdb5.6.4-enterprise-rhel7.x-x86-64-20 ...
- MySQL 中 AES_DECRYPT 加密,如何在瀚高数据库中使用
瀚高数据库 目录 环境 症状 问题原因 解决方案 环境 系统平台:银河麒麟R系(CPU龙芯)4,银河麒麟U系(CPU飞腾)4 版本:4.5.2,6.0 症状 MySQL替换为国产瀚高数据库时, AES ...
- mysql partition 语法,MySQL与瀚高数据库的范围分区的语法及实例(APP)
目录 环境 文档用途 详细信息 环境 系统平台:Microsoft Windows (64-bit) 10 版本:5.6.4 文档用途 当表中的数据量不断增大,查询数据的速度就会变慢,应用程序的性能就 ...
- Windows系统部署瀚高数据库并在SuperMap iDesktop中使用
目录 前言 一:Windows系统部署瀚高数据库 二:对数据库进行PostGIS扩展 三:SuperMap iDesktop中新建HighGoDB数据库型数据源 作者:kxj 前言 瀚高数据库是 ...
- 瀚高数据库故障诊断指导方案
作者:瀚高PG实验室 (Highgo PG Lab) 目录 环境 文档用途 详细信息 环境 系统平台:Linux x86 Red Hat Enterprise Linux 6,Linux x86 SL ...
- Oracle数据库中stragg()函数,在瀚高数据库中如何替换使用?
瀚高数据库 目录 环境 文档用途 详细信息 环境 系统平台:Microsoft Windows (64-bit) 10 版本:6.0 文档用途 用于解决怎么在瀚高数据库中实现和Oracle数据库中st ...
最新文章
- python语言怎么用-学习如何使用 Python 程式语言
- python常用内置函数总结-python常用内置函数整理—反射
- 局域网IP-MAC绑定方案
- pg 10 wal 归档同步配置
- UNITY中使用不安全代码的相关设置
- java安全编码指南之:字符串和编码
- 如何成为一名更出色的开发者?
- 软件开发之韵:和谐敏捷
- 分享:BlackHole开发日记-Java守护进程、Signal处理
- CMake 简单入门
- 12款黑科技神器,务必低调使用
- icem划分网格步骤_ICEM网格划分步骤
- 计算机二级access无忧考吧破解,无忧考吧access模拟考试软件
- android电视与苹果手机图片,小米电视怎么投屏?图文讲解安卓和苹果手机投屏到小米电视方法...
- Nginx反向代理与负载均衡应用实践(二)
- 科大讯飞实现了APP用自己的声音听故事
- 多巴胺所表达的prediction error信号
- 基于java的高校实验室排课系统
- 计算机系统结构专业都学什么,计算机专业都学些什么?
- Sidney网站分析感悟:无细分,毋宁死