使用了这个数据库神器,让我工作效率提升了数倍
如若转载请联系原公众号
前言
对于开发、测试、DBA、运维来说,数据库再熟悉不过了。
很多时候,我们需要在本地电脑上,直接连接开发或测试环境的数据库,方便对数据进行增删改查。当然很多数据库都提供了自带的客户端,比如mysql的客户端是这样的:
用过的人基本都会吐槽,太low了,极其不好用。
写sql语句不方便,没有提示功能,特别是如果sql语句比较复杂,不能格式化,会看得人头皮发麻。 看数据不方便,如果数据比较多,整屏的数据显得有点凌乱。如果字段中包含json格式的数据,基本看不了。 对表的dml和ddl操作,都必须通过命令,低效率,而且容易出错。 很难看出表和表之间是怎样关联的。 导入导出数据就更不方便了。
有没有一款好用的工具,让我们能更高效的操作数据呢?
这就是今天我要推荐给大家的数据库神器:Navicat Premium
。
下面我们一起看看Navicat Premium有哪些牛逼的功能。
1. 支持多种数据库
在连接数据库之前,我们需要知道Navicat Premium
支持哪些数据库。
点击工具栏中Connection上的加号
:mysql
、sql server
、oracle
,还有mongodb等。此外,还支持8种数据库云。
2. 轻松管理连接
2.1 连接数据库
之前我们通过mysql客户端连接mysql服务端时,需要通过命令行,比如:
mysql -h127.0.0.1 -uroot -p123456;
每次都需要输入连接地址、用户名、密码,不觉得烦吗?
恭喜你,Navicat Premium
自带保存密码的功能:
以后就能通过界面双击Connection Name,直接访问数据库了:
2.2 显示指定实例
有时候,同一个数据库连接下的实例很多,但只有少部分是我们真正需要关心的。我们想要过滤出这部分我们关心的实例,该怎么做呢?如果每次都从上百个实例中找一个,会不会有点太浪费时间了?
这时可以在databases tab页下勾选 Use custom database list:
这样重新访问数据库连接的时候,会发现左边实例列表中只展示了,我们选择的数据库实例。
3. 方便查询表信息
以前我们查看某个数据库实例拥有哪些表,一般通过如下命令:
show tables;
不好意思,那已经是过去式了。
现在只需双击Tables节点,展开即可。除此之外,还能非常直观的看到试图、函数、事件、备份等功能。
如果想看数据,选中双击某张表就可以了:
如果想看表信息,可以通过右边的窗口:
如果想看表结构,只需切换成ddl选项:
比如:之前已经在dev环境创建了表,通过该功能快速获取ddl语句,然后复制到st环境执行,简直太棒了。
当然我们通过如下命令:
show create table jump_log;
也可以看到同样的效果,但是在Navicat Premium中只需动动鼠标就能搞定,确实更方便。
4. 数据库实例的ddl操作
通常情况下,我们对数据库的ddl操作,其实不多。创建了数据库,很少去修改和删除。这些操作虽说有点食之无味,但确实弃之可惜。
右键单击某个数据库实例,就会弹出如下窗口:
里面包含了数据库实例的:创建、修改和删除操作,同时还能打开、关闭该实例。
4.1 数据库的创建和修改
创建和修改实例时,只需要输入以下三个字段:
4.2 mysql客户端
在右键单击某个数据库实例,出现的弹窗中如果选择Console,能调出mysql客户端:
4.3 执行外部脚本
如果选择Execute SQL File,能执行外部的sql脚本:
4.4 表导出
如果选择Dump SQL File,能导出所有表的数据:
导出表结构 和 数据 只导出表结构
最终会导出到xxx.sql文件中:
4.5 打印数据库
如果选择print database,能生成pdf文件:
4.6 转换model
如果选择Reverse Database To Model,能弹窗表的model窗口:
4.7 找到数据
如果选择Find in database,能从整个数据库实例的所有表中,查找某个关键的数据:Navicat Premium
的这个查找功能,能够迅速减少我们的工作量。哇塞,太厉害了吧?
5. 表的ddl操作
相对于数据库实例的ddl操作,表的ddl操作使用频率会更高一些。选中某张表右键点击一下,就会弹窗如下窗口:
如果选择Open Table,会弹出查看数据的窗口:
5.1 表的设计窗口
如果选择Desgin Table,会弹窗表设计窗口,默认的tab是Field:
它支持的字段类型有:
如果在该窗口中选择Index tab页,则会弹出索引设计窗口:
如果选择Options tab页,则会弹窗表信息的窗口:
Comment选项主要是为了描述一下该表的功能,由于过于简单,此处省略截图了。
如果选择SQL Preview,也能看到该表完整的ddl语句:
5.2 表的删除
上面重点介绍的是表的设计窗口,通过它我们能创建和修改表,那么表的删除呢?
主要是通过如下三个功能实现的:
Delete Table:物理删除表 Empty Table:清空表中的数据,但表任然保留 Truncate Table:逻辑删除表
5.3 表的复制
有时候,我需要复制某张表,做备份。或者为了节省时间,基于某张已有的表创建新表。如果选择Duplicate Table,会出现如下选项:
如果接下来选择:Structure + Data,则表示复制表结构和数据,数据库会自动创建一张新表:
里面包含的数据跟原表一样:
如果选择:Structure,则只复制表结构,数据库也会自动创建一张新表,但数据是空的:
5.4 数据导入
在实际工作当中,我们经常需要导入数据。
比如有一批新的用户数据需要导入数据库,这时可以选择Import Wizard,会弹如下窗口:
我们以excel文件为例,假设现在接到需求,有这样的数据需要导入数据库:
可以新加一张表字段跟其对应:
5.5 数据导出
在实际工作当中,数据导出的需求偶尔也会遇到。
这时可以选择Export Wizard,会弹如下窗口:
接下来,选择要导出的字段,允许只导出某些指定字段:
6. 表的查询操作
查询操作可能是数据库中用得最多的操作,因为绝大多数功能,都是读多写少。
选中某张表,点击工具栏中的New Quer按钮,就会出现右边查询窗口:
6.1 执行sql语句:
在窗口中可以选择一个数据库连接 和 数据库实例:
虽说该窗口的名称是查询窗口,但并非仅仅支持查询操作,还可以执行其他操作,比如:update、delete、alter、drop等等。
6.2 保存sql语句:
有时候我们新建了一个查询窗口,里面写了很多sql语句,但由于急着关电脑,又想保存这些sql,避免丢失重写的情况发生。
这时我们如何保存该sql语句呢?
这样以后就能在Queries中非常方便得找到该sql了:
6.3 快速关联表
我们写查询sql如果涉及到多张表的时候,通常需要通过join或者子查询做关联。
难道还有更高效的方式?
点击下图中的按钮:
会弹窗如下窗口:
然后在右边窗口中选择做的关联:
6.4 格式化sql语句
有时候,我们写的sql很长,而且比较复杂,一眼根本没办法看出层次结构。虽说该sql能够正常运行,但每次看到它的时候,心头可能会一紧,比如:
看起来非常不直观,这时可以点击下图的按钮优化该sql:
6.5 执行计划
有时候,我们想查看某条sql的执行计划,通常情况下需要在该sql语句前,加explain
关键字,比如:
但还有更简单的方法,就是在执行sql之前,点击下图中的按钮:explain
关键字,但同样出现了执行计划。真的帅呆了。
6.6 切换展示方式
我们查询出来的数据,默认是用表格的方式展示的。如果字段中的内容非常少,这种方式还是比较好的。但如果某个字段的内容很多,比如extra字段是json类型的,里面层次结构很复杂:
这时可以切换到form view模式:
然后在弹窗的窗口中点击下图中按钮:
6.7 新增和删除数据
我们在新增数据时,只需点击下图中的按钮:
同样,我们在删除数据时,只需选中要删除的数据,然后点击下图中的按钮,就能轻松搞定:
其实Navicat Premium
的功能还有很多很多,我不可能一一列举完,在这里只是抛砖引玉。
推荐阅读: