Navicat基本使用与MySQL事务特性

目录

一、navicat-15的下载安装

二、navicat连接数据库

Ⅰ、登录

Ⅱ、连接数据库失败

 三、navicat能做的基础操作

Ⅰ、数据库的基本操作

Ⅱ、 针对表的操作

Ⅲ、SQL语句管理数据库

Ⅳ、用户管理

Ⅴ、视图的创建

Ⅵ、表的导出与导入

Ⅶ、数据库的 备份操作

四、MySQL数据库的事务

Ⅰ、事务特性

redo 日志

Ⅱ、隔离级别

(1)、read uncommitted

(2)、read committed

(3)、repeatable read

(4)、serializable

五、MVCC

Ⅰ、什么是当前读和快照读?

(1)、当前读(悲观锁的具体实现)

(2)、快照读(MVCC非阻塞的具体实现)

Ⅱ、MVCC的原理

(1)、隐式字段

(2)、undo日志

(3)、Read View

*可见性判断逻辑

总结


我们的MySQL数据库已经在linux系统中成功安装运行了,但如果要在windows系统上管理数据库,那么我们还需要学习navicat这个管理数据库的工具。

一、navicat-15的下载安装

navicat premium-15官方下载https://www.navicat.com.cn/download/navicat-premium

选择合适的版本进行下载

详细的下载、安装可以参考以下文章

Navicat Premium15安装与激活(完整激活版)

二、navicat连接数据库

Ⅰ、登录

在安装好navicat后,我们就可以开始连接我们的MySQL数据库了,打开navicat,点击连接,选择mysql进行登录

Ⅱ、连接数据库失败

 这里可能会出现登录失败的情况,如果你是学习阶段,开的虚拟机和navicat跑在一台机器上,排除数据库没有开启成功、主机防火墙未设置策略或未关闭(错误码1130)等问题,可能存在的问题是windows主机没有开启telnet功能,需要做如下设置

 进入windows功能开启telnet并重启完成配置。

 做完这一步还需要进入数据库修改Host,root用户默认只能从localhost进行登录,因此想要用navicat登录root的话需要进入mysql.user表进行设置,“%”是一个通配符,Host列设置为%,表示所有的IP都有连接权限。

#修改mysql.user表中用户root的host字段为%
mysql> update mysql.user set host= '%' where user='root';

#让配置生效
mysql> flush privileges;

#当然,给root用户设置任何host都可以登录明显是不安全的,这里只是试试
mysql> select Host,User from mysql.user;
+-----------+---------------+
| Host      | User          |
+-----------+---------------+
| %         | root          |
| localhost | mysql.session |
| localhost | mysql.sys     |
+-----------+---------------+
3 rows in set (0.00 sec)

错误码2058,密码的加密方法变更,需要在linux系统中登录mysql执行如下语句

mysql> alter user 'root'@'%' identifined with mysql_native_password by '你的密码'

 三、navicat能做的基础操作

Ⅰ、数据库的基本操作

我们成功连接上了数据库,这里使用的mysql版本是mysql-5.7。可以看到我们所有的库,比起linux里还要繁琐的输入

mysql>show databases;

这种可视化界面可谓是一览无余 

我们直接双击进入test库,双击“表”进入,连show tables也不用输了,每一个表都看的清清楚楚。

通过右键点击,我们可以创建、编辑、删除......数据库更改数据库和表的属性

Ⅱ、 针对表的操作

 右键test库下的“表”,选择新建数据表,或右击一个已存在的表点击“设计表”,进入一个编辑表的窗口。在这里对表进行表结构的展示和编辑,可以插入字段并定义字段类型和长度,设置主键、设置默认值,是否为“null”等,相当于describe和alter操作。

点击操作添加、插入、删除表中的字段,直接点击名、类型、长度等输入字段的属性,ctrl+s或点击“保存”来进行保存

 双击左键进入指定的表可以对表的记录进行操作,拿上图的这个表做示范,输入相应的数据,name=“zhangsan” gender=“male” password=“12345”,直接按方向键下,id=1自动填入, 

测试一下我们设置的“not null”,我们设置了id、name不能为空,第二行只输入一个id=2,直接ctrl+s保存,提示报错了 

 未进行保存,字段前方会有一个星号提示,如右👉图 ,然而
不知是我电脑屏幕太小了还是怎么,不仔细看还真看不到它。

 当我想要给gender设置默认值为unknow(未知)时,按下保存却报错了,没想到这里居然要写的和SQL语句一样,加上引号括起来才行

 

在这个界面创建外键,我们先清空表内容(最好创建表的时候设置,否则会报错),所关联的主表的主键和foreign key需要在类型、长度上保持一致,同时外键不可以设置自增、无符号、填充零

进入”设计表“,点击外键--添加外键,设置外键名、字段等属性信息,然后保存

Ⅲ、SQL语句管理数据库

 在navicat中,也可以点击新建查询,在命令行中输入SQL语句的方式管理数据库中的数据,并可以使用Tab键对命令进行补全

  • 5
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值