文章摘要:本文详细介绍了DBeaver的下载安装和连接MySQL的操作,以及常见的建表等操作。DBeaver是一款开源的通用数据库管理工具,支持连接多种数据库并提供了图形化操作界面。它可用于执行SQL查询、管理数据库对象、数据导入导出等任务,支持MySQL、PostgreSQL、Oracle等主流数据库。DBeaver具有跨平台特性,提供社区版和企业版,适合开发者和DBA使用。
前言 :DBeaver 是一个数据库客户端工具(也叫IDE/可视化工具),专门用来连接各种数据库并提供图形化操作界面。
下载安装
找到DBeaver官网下载对应的版本
下载完成后点击安装,一路next,路径可以改到其他盘,避免占用c盘内存。
开荒操作——在窗口选项卡找到首选项更改字体大小,让自己的眼睛看得更舒服
连接全流程
一、连接数据库
点击数据库进行连接
①如果显示“localhost”或“MySQL”且前面是绿色小圆点✓→说明已经连上了
②如果显示红色或灰色X→说明连接没成功
连接成功如下图
二、新建数据库
有两个方法
方法一 图形化操作
1. 右键点击左侧连接下的数据库目录
2. 选择“新建数据库”(或 Schema)
然后给数据库起个名字,字符集和排序规则不用填,保存默认就行
3. 输入库名(如 TestA),字符集保持默认,然后点击确定
方法二 SQL语句创建
1. 点击顶部菜单的“SQL 编辑器”图标(F3或按 Alt+X)
在打开的空白编辑器里,输入一行SQL:
CREATE DATABASE test_dw;2. 选中这行SQL,按Ctrl + Enter 执行。
执行成功后,左下角会显示“已执行成功”。然后右键点击左侧连接,选择刷新(Refresh),就能看到新建的数据库了。
三、切换到目标数据库
建好数据库后,你要告诉 DBeaver “我要用这个数据库”,否则SQL 会建到默认的mysql库里。有两种方式:
方式一:USE语句
在你执行建表SQL之前,在SQL编辑器的最顶部加上这行:USE testA;然后把这行和后面的建表 SQL 一起选中,一起执行。
方式二:双击选中
双击你新建的testA 数据库,让它变成粗体(表示当前默认使用它)。然后新建一个SQL 编辑器,直接执行建表语句即可。
四、创建数据表
两种方法,一种是直接在ide里面操作(图形化建表),另一种是通过编辑器写sql语句
方法一:图形化建表
1 . 右键模板库 →新建表
2. 填写表名和相关描述
3.添加字段(名称/类型/非空/自增等)
新建一个列
输入名称比如id,并选择相应的数据类型,把非空和自增勾选上,点击确定
创建约束
方法二:SQL语句建表
执行
CREATE TABLE TestA.orders ( id INT AUTO_INCREMENT NOT NULL, name VARCHAR(100) NOT NULL, price DECIMAL(10,2) NOT NULL, stock INT NOT NULL, CONSTRAINT orders_pk PRIMARY KEY (id) );执行建表语句的时候要注意,auto_increment(自增)只能加在整数类型的主键字段上,name(字符串)、price(小数)、stock(整数)都不能自增,一张表只能有一个自增字段
点击约束可以看到相关的约束,牢记一张表只能有一个主键
五、插入数据并提交
往里面填数值,插完数据后,记得点击工具栏的“提交”按钮(或按Ctrl+Shift+Enter),否则数据不会真正写入表里。
方法一:图形化插入
1. 右键表→查看数据→添加行
2. 填完数值后点击提交,如下图
方法二:SQL语句插入
打开SQL编辑器,通过SQL代码创建
要知道连的是哪个数据库
写好之后,要点击执行,在下面出现刚刚插入的值
六、用户管理
| 操作 | 命令 |
|---|---|
| 创建用户 | CREATE USER '用户名'@'localhost' IDENTIFIED BY '密码'; |
| 授予权限 | GRANT ALL PRIVILEGES ON 库名.* TO '用户名'@'localhost'; |
| 刷新权限 | FLUSH PRIVILEGES; |
| 查看权限 | SHOW GRANTS FOR '用户名'@'localhost'; |
| 撤销权限 | REVOKE ALL PRIVILEGES ON 库名.* FROM '用户名'@'localhost'; |
| 修改密码 | ALTER USER '用户名'@'localhost' IDENTIFIED BY '新密码'; |
| 删除用户 | DROP USER '用户名'@'localhost'; |
操作时把'用户名'、'密码'、库名替换成实际内容。授权后记得执行 刷新权限才会生效
七、断开连接
法1 执行 exit;
法2 直接关闭SQL编辑器 ;
法3 右键连接 → 断开连接
可能会遇到的问题
出现下列情况——Public Key Retrieval报错,连接不上localhost(如果连接的是MySQL)
这个错误Public Key Retrieval is not allowed在MySQL8.0版本中很常见,主要是因为新版MySQL默认使用了更严格的加密插件,而DBeaver默认没开启“允许获取公钥”的开关。
解决办法如下
点击左边的数据库,找到需要连接的数据库,找到 编辑连接 ,进入到驱动选项,再找或者新增一个名为allowPublicKeyRetrieval的属性 并将其值改为true
如果列表里还有useSSL这个属性,也顺手把它改成false(如果没有就忽略,不是必须的)。
接着点击确定,再查看数据库连接情况为连接成功,就没有问题了。
为什么会报这个错?
简单说就是:MySQL 8.0 觉得密码明文传输不安全,所以加了一层公钥加密。而 DBeaver 比较谨慎,默认不主动向服务器索要公钥,两边都对安全有追求,但凑一起就报错了。把allowPublicKeyRetrieval改成true,意思就是“我允许你去拿公钥”,问题就解决了
完结