目录
我们的MySQL数据库已经在linux系统中成功安装运行了,但如果要在windows系统上管理数据库,那么我们还需要学习navicat这个管理数据库的工具。
一、navicat-15的下载安装
navicat premium-15官方下载https://www.navicat.com.cn/download/navicat-premium
选择合适的版本进行下载
详细的下载、安装可以参考以下文章
二、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键对命令进行补全