介绍一个基于GoLang的数据库命令行工具

栏目: Go · 发布时间: 5年前

内容简介:最近在做项目的时候,一直处于非常紧张的状态,因为时间有限,几乎不停的写代码,不停的把新的代码和数据库结构和数据同步到不同的环境中测试,导数据是件麻烦事,我想有没有一个简单的工具,可以使得跨主机复制数据变得简单呢。接下来就介绍一个基于GoLang开发的命令行工具,可以方便快捷复制数据,既可以复制库,也可以复制表,还可以把一个sql语句查询出来的数据导入到新的表中,接下来就介绍下这个命令行工具的主要用法。

最近在做项目的时候,一直处于非常紧张的状态,因为时间有限,几乎不停的写代码,不停的把新的代码和数据库结构和数据同步到不同的环境中测试,导数据是件麻烦事,我想有没有一个简单的工具,可以使得跨主机复制数据变得简单呢。

接下来就介绍一个基于GoLang开发的命令行工具,可以方便快捷复制数据,既可以复制库,也可以复制表,还可以把一个 sql 语句查询出来的数据导入到新的表中,接下来就介绍下这个命令行 工具 的主要用法。

项目地址

https://github.com/joyant/carry

安装

可以clone完项目后自己编译:

go build main.go

也可以在 这里 下载,但是只支持64位的机器,好在现在大家开发用的机器一般都是64位的。

下载或者编译之后,如果开发使用的是mac或者linux,需要做两件事:

  1. 把可执行文件放在 /usr/local/bin/ 下面,修改名字为carry mv main carry ,赋予运行权限 chmod 755 carry
  2. 还需要使carry对目录 /usr/local/etc/ 有可写权限,carry会把数据库的账户信息保存在这个目录下。

对于windows的用户,配置文件是放在C盘下的,需要修改环境变量,使得在命令窗口敲carry的时候,windows能找到这个命令。

接下来我们就可以使用了。

保存数据库账户信息

在使用复制数据的命令之前,需要先先告诉carry数据库信息。比如,你现在要登录在主机192.168.0.1上的mysql server, 账号是root,密码是root,端口是3306, 你给这个连接起名叫dev, 这在Carry里有一个专门的术语叫:section。

$ carry store -s dev -H 192.168.0.1 -u root -p root -P 3306

如果你看到错误提示,请确保Carry对目录/usr/local/etc/有读写权限,它需要把你刚才输入的账号保存在这个目录下。

如果你能看到success的提示,证明你已经保存成功了,现在你可以登录 mysql 了。

登录

$ carry login -s dev

登录的前提是,你已经安装了mysql-client, 并且设置了正确的环境变量,否则你将会看到错误提示。

如果你想修改dev的密码,也很简单:

$ carry store -s dev -p 123456

查看已经保存的section

$ carry list # watch all
$ carry list -s dev # only watch section dev

删除section

$ carry del -s dev

数据传输

终于到这一步了,但是在传输前,我们还需要再添加一个section。

$ carry store -s test -H 192.168.0.10 -u root -p root -h 3307

现在,我们可以使用传输命令了,首先,我们把dev上的erp库复制到test主机上:

$ carry trans -f dev.erp -t test.erp

复制一个单独的表也是可以的:

$ carry trans -f dev.erp.user -t test.erp.user

如果user表不存在,Carry会询问你是否要创建它。

删除表或者库

$ carry drop -s dev.erp.user # delete table user
$ carry drop -s dev.erp # delete database erp

当你执行drop操作时,Carry会询问你,以防止误操作。


以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

企业应用架构模式

企业应用架构模式

Martin Fowler、王怀民、周斌 / 王怀民、周斌 / 机械工业出版社 / 2004-7 / 49.00元

本书作者是当今面向对象软件开发的权威,他在一组专家级合作者的帮助下,将40多种经常出现的解决方案转化成模式,最终写成这本能够应用于任何一种企业应用平台的、关于解决方案的、不可或缺的手册。本书获得了2003年度美国软件开发杂志图书类的生产效率奖和读者选择奖。本书分为两大部分。第一部分是关于如何开发企业应用的简单介绍。第二部分是本书的主体,是关于模式的详细参考手册,每个模式都给出使用方法和实现信息,并一起来看看 《企业应用架构模式》 这本书的介绍吧!

HTML 压缩/解压工具
HTML 压缩/解压工具

在线压缩/解压 HTML 代码

CSS 压缩/解压工具
CSS 压缩/解压工具

在线压缩/解压 CSS 代码

SHA 加密
SHA 加密

SHA 加密工具