干掉 Navicat:正版,MySQL 官方客户端真香!
如果使用Navicat的话,避免不了需要到处寻找破解版,或者license(笔者很肯定的说,没有几个人会购买正版Navicat的license)。个人使用暂且不提,如果是公司内使用,还是有法律风险的。
所以,我们何不寻找一个完全开源免费、不受任何限制的MySQL客户端来使用呢?正好MySQL官方就有一个这样的产品:MySQL Workbench。
开源协议
MySQL Workbench社区版遵循GPL开源协议,GPL协议描述:http://www.gnu.org/licenses/old-licenses/gpl-2.0.html。简单的总结就是:遵循GPL协议的软件允许你免费使用、分享以及修改。
GPL是一个具有传染性“传染性”的协议,它的“传染性”在于:只要在一个软件中使用(”使用”指类库引用,修改后的代码或者衍生代码)GPL 协议的产品,则该软件产品必须也采用GPL协议,既必须也是开源和免费,不允许修改后和衍生的代码做为闭源的商业软件发布和销售。我们所熟悉的Linux就是采用了GPL,而Android是基于Linux的,所以Android操作系统也必须是开源和免费的!
初体验Workbench
接下来让我们体验一下MySQL Workbench,看它是否有足够的能力来替代Navicat。首先去官方网站下载:https://dev.mysql.com/downloads/workbench/ 。安装后,打开得到如下界面:
Workbench
我们想新建连接的话,只需要点击“MySQL Connections”旁边的“+”即可(MySQL Workbench只支持MySQL,而Navicat能支持MySQL、SQLite、Oracle等多种数据库),然乎输入Hostname,Port,Username,Password等目标数据库信息:
接下来点击“Test Connection”检查填入的信息是否正确,如果没有任何问题,就会弹出“Successfully made the MySQL connection”,即表示你成功的创建了MySQL连接:
探索Workbench
设置默认schema
我们一般设置一个MySQL连接的话,是希望操作它时,能直接进入我们的目标数据库,比如笔者的MYSQL服务器上有好几个数据库:leaf、tinyid等。如果希望我创建的连接,每次操作时直接进入tinyid这个库的话,只需要在设置连接属性时,设定“Default Schema”即可:
模糊搜索表
Navicat中,如果想在目标库中模糊搜索某个表(假如带有info的表名)的话,只需输入info即可。但是MySQL Workbench中的语法比较复杂,需要输入.*info*
才行:
增删改查
接下来说一下如果对表中的数据进行增删改查。以新增id=3这行数据为例,填入数据后,点击右下角的“Apply”。点击“Apply”后,会出现这次新增数据对应的SQL,再次点击“Apply”即可:
执行日志如下:
数据预览
如果我们想预览表中部分数据的话,需要右键点击表名,然后选择“Select Rows - Limit 1000”:
三大功能键
在点击表名后,就可以显示下图中三个功能键,第一个表示得到表的详情,例如:列信息,索引信息,DDL等。第二个功能键是用来修改表结构的,即我们常说的DML操作。第三个功能键是查看表数据(即上一段落说的数据预览),并可以对其进行增删改查:
- 一步步实现静态页面布局
- Stanford机器学习笔记-3.Bayesian statistics and Regularization
- 在R中使用支持向量机(SVM)进行数据挖掘
- 【你问我答】你与Java大牛的距离,只差这24个问题
- Android漏洞扫描工具Code Arbiter
- Huawei HG532 系列路由器远程命令执行漏洞分析
- postMessage与postMessage跨域
- 【手把手教你做项目】自然语言处理:单词抽取/统计
- D-Link系列路由器漏洞挖掘入门
- 大家一直在谈的领域驱动设计(DDD),我们在互联网业务系统是这么实践的
- 在Atom中设置Python开发环境
- Kaggle赛题解析:逻辑回归预测模型实现
- Shield:支撑美团点评品类最丰富业务的移动端模块化框架开源了
- 点击块,让小块动起来 - 函数封装
- MySQL 教程
- MySQL 安装
- MySQL 管理与配置
- MySQL PHP 语法
- MySQL 连接
- MySQL 创建数据库
- MySQL 删除数据库
- MySQL 选择数据库
- MySQL 数据类型
- MySQL 创建数据表
- MySQL 删除数据表
- MySQL 插入数据
- MySQL 查询数据
- MySQL where 子句
- MySQL UPDATE 查询
- MySQL DELETE 语句
- MySQL LIKE 子句
- mysql order by
- Mysql Join的使用
- MySQL NULL 值处理
- MySQL 正则表达式
- MySQL 事务
- MySQL ALTER命令
- MySQL 索引
- MySQL 临时表
- MySQL 复制表
- 查看MySQL 元数据
- MySQL 序列 AUTO_INCREMENT
- MySQL 处理重复数据
- MySQL 及 SQL 注入
- MySQL 导出数据
- MySQL 导入数据
- MYSQL 函数大全
- MySQL Group By 实例讲解
- MySQL Max()函数实例讲解
- mysql count函数实例
- MYSQL UNION和UNION ALL实例
- MySQL IN 用法
- MySQL between and 实例讲解
- 初试 Open Service Mesh(OSM)
- K8S 生态周报| runc v1.0-rc92 发布
- 聊聊 Python 面试最常被问到的几种设计模式(上)
- 推荐一套个人文档管理系统。
- OpenCV图像读取(imread) 显示(imshow) 保存(imwrite)的冷知识点
- CodeReview实践-Gerrit自动触发JenkinsCI
- OpenCV常用图像拼接方法(一) :直接拼接
- ClickHouse|MergeTree引擎之数据分区
- OpenCV常用图像拼接方法(二) :基于模板匹配拼接
- 为了解决 Prometheus 大内存问题,我竟然强行将 Prometheus Operator 给肢解了。。
- 面试官:webpack原理都不会?
- 算法篇:树之对称二叉树
- 算法篇:树之二叉树的恢复
- 算法篇:树之利用数组处理链表
- 灰子的Go笔记:sync.Map