首页 > 数据库 >Oceanbase开源版 数据库恢复MySQL数据库的过程

Oceanbase开源版 数据库恢复MySQL数据库的过程

时间:2023-12-18 18:44:39浏览次数:31  
标签:Oceanbase 数据库 MySQL xx sql mysql 备份

Oceanbase开源版 数据库恢复MySQL数据库的过程


背景

想进行一下Oceanbase数据库的兼容性验证. 
想着用app create 数据库的方式周期比较长. 
所以我想着换一套 备份恢复的方式进行数据库的创建直接进行兼容性验证. 
这里面就需要进行一下数据库的备份恢复了. 

所以想总结一下. 

备份

MySQL的逻辑备份非常非常的慢. 
慢到吐血. 

但是脚本是非常简单的
mysqldump -hxx.xx.xx.xx -P3306 -pPassword  -d yourdatabasename > yourdatabase_backup.sql 

就可以将数据库进行一下备份的操作. 

Oceanbase的恢复处理

使用mysql的客户端进行登录

注意需要先 yum install mysql -y 安装mysql客户端

mysql -uroot -P2881 -pPassword -hxx.xx.xx.xx
登录数据库后直接进行:
source yourdatabase_backup.sql 

就可以进行数据库的恢复操作. 

异常情况

注意 过程中会出现大量的SQL报错,比如为:ENABLE KEYS */’、‘DISABLE KEYS */ 

CSDN和与oceanbase的原厂沟通后, 结论是一样的: 

数据文件中有--注释信息,导入到OceanBase会报错,可以忽略,并不影响数据导入。我对源文件作了编辑,删除了这些内容。
其它类似如‘ENABLE KEYS */’、‘DISABLE KEYS */’等报错,可以忽略,并不影响数据导入。我对源文件作了编辑,删除了这些内容。
变量 SQL_NOTES,DEFINER 语句等 OceanBase MYSQL 会不支持,但是不影响,需要替换掉其中部分。
https://blog.csdn.net/hyu1989/article/details/127627874

视图重建

另外发现, 数据库的试图没有创建成功, 怀疑也是SQL不兼容, 

所有有一个简单办法 可以从 数据库的备份呢脚本里面将 视图的重建

cat yourdatabase_backup.sql  |grep '50001 VIEW ' >view.sql
sed -i 's#/*!50001#create#g' view.sql

然后可以将 /* 和 */ 的注释信息取消掉. 
然后使用navicat 链接数据库进行重建就view就可以了. 


应用链接与测试

使用 app 注册数据库, 可以选择mysql模式, 然后启动服务就可以进行登录验证了. 

标签:Oceanbase,数据库,MySQL,xx,sql,mysql,备份
From: https://www.cnblogs.com/jinanxiaolaohu/p/17911934.html

相关文章

  • 云数据库MySQL多人协同开发实践
    本文分享自天翼云开发者社区《云数据库MySQL多人协同开发实践》,作者:不知不觉随着云计算技术的快速发展,云数据库作为云计算的重要组成部分,为企业提供了高效、灵活和可靠的数据存储和管理服务。其中,MySQL作为一款流行的开源关系型数据库,在云数据库领域具有广泛的应用。多人协同开发......
  • MySQL运维8-Mycat范围分表
    一、范围分片根据指定的字段及其配置的范围与数据节点的对应情况,来决定该数据属于哪一个分片。说明1:范围分片会提前提供一个分片的范围默认是0-500万是一个分片,500万-1000万是一个分片,1000万-1500万是一个分片,超过1500万要重新设置。说明2:这个范围我们可以根......
  • kettle组件控制操作MySQL
    使用kettle执行脚本:然后保存执行实现以下效果;转换参数:实现变量转换:deletefromtestwhereuserid='${userid}';实现效果:100被删除......
  • MySQL入门
    ps:(文中的中括号表示可以添加或者不添加)初始操作:  自己创建了数据库,展示时是这样的,但是在每一个数据库名字之下,可以想象又是一张这种表格,与一层层打开文件夹相似;如下:列类型:以上图中lesson数据库中红色表格为例:每个表格中的一列都可能对应不同类型;eg:姓名那一列放置的就是......
  • 如何给图数据库 NebulaGraph 新增一种数据类型,以 Binary 为例
    NebulaGraph内核所自带的数据结构其实已经很丰富了,比如List、Set、Map、Duration、DataSet等等,但是我们平时在建表和数据写入的时候,可以用到的数据结构其实比较有限,复杂结构目前仅支持以下几种:enumPropertyType{UNKNOWN=0,...//基础类型TIME......
  • 如何给图数据库 NebulaGraph 新增一种数据类型,以 Binary 为例
    NebulaGraph内核所自带的数据结构其实已经很丰富了,比如List、Set、Map、Duration、DataSet等等,但是我们平时在建表和数据写入的时候,可以用到的数据结构其实比较有限,复杂结构目前仅支持以下几种:enumPropertyType{UNKNOWN=0,...//基础类型TIM......
  • 数据库版本历史的总结-信创部分
    数据库版本历史的总结-信创部分背景总结了开源和国外商业数据库的非常简单的历史.发现想总结一下国产的数据库非常困难.云和恩墨的数据库排行榜上面,国产数据库有接近300种我感觉我这边几乎是无法进行学习和总结的.所以只能够将几种比较常见的数据库进行一些总结.人......
  • datax web采集oracle数据库,能连接无法使用的问题
    链接oracle数据库时,要注意自己数据的连接参数,下边代码中的高亮部分作为参考{"job":{"setting":{"speed":{"channel":3,"byte":1048576},"errorLimit":{"record":0......
  • mysql有哪些权限
    MySQL是一款常用的数据库管理系统,它有许多不同的权限,用于限制不同用户的访问和操作权限。1.全局权限GRANTALLPRIVILEGESON*.*TO'username'@'host'IDENTIFIEDBY'password'WITHGRANTOPTION;全局权限是最高权限,它允许用户在所有数据库和表中进行任何操作,并且可以进行......
  • C#的相关知识,封装一个泛型的数据库访问查询方法
    publicTGet<T>(intid)whereT:BaseModel{stringConnectionString="DataSource=DESKTOP-63QE7M1;Database=CustomerDB;UserID=sa;Password=sa123;MultipleActiveResultSets=True";Typetype=typeof(T);varpropList=type.GetProperties......