MySQL与PostgreSQL安装

mysql安装

此博客只是记录在win10系统上安装MySql流程。

1.mysql下载

第一种方式,去数据库的官网http://www.mysql.com下载MySQL。
点击进入后的首页如下:

然后点击downloads,community,选择MySQL Community Server。如下图:

滑到下面,找到Recommended Download,然后点击go to download page。如下图:

点击download进入下载页面选择No thanks, just start my download就可以开始下载了,当然你要是想注册也可以注册一下。

第二种方式,也可以直接点击https://dev.mysql.com/downloads/mysql/ 进去下载对应系统的MySql版本信息
选择需要下载的对应系统版本的mysql:

同样可以选择只下载不注册:

2.MySQL安装

打开刚刚下载好的安装包,开始安装MySQL。安装大部分情况都选择默认设置,但也有一些位置根据自己实际情况来定:
选择 I accept 然后点击next进入下一步。

这里选择Developer Default,然后点击next进入下一步。

此处可以修改MySQL的安装目录,也可以使用默认路径。

这一步是检查安装条件,直接点击next进入下一步就可以了。

会提示电脑是否含有MySQL的依赖插件,会提示是否进行安装:

这里直接点击execute执行就可以了,执行完后点击next进入下一步。

一直等待全部依赖安装完成

继续点击next进入下一步

选择第一个然后点击next进入下一步。

这里直接点击next进入下一步

这里直接点击next进入下一步

设置root密码然后点击next进入下一步

设置MySQL的服务名称:

然后等待安装

全部安装完成后点击点击next进入下一步

继续点击next进入下一步

继续点击next进入下一步

继续点击next进入下一步

继续点击next进入下一步

继续点击next进入下一步

继续点击next进入下一步

继续点击next进入下一步

继续点击next进入下一步

点击Finish完成MySQL的安装

安装完成后进入MySQL的安装目录,进入MySQL Sever,其目录下的文件如下:

bin目录下保存了MySQL常用的命令工具以及管理工具
data目录是MySQL默认用来保存数据文件以及日志文件的地方(我的因刚安装还没有data文件夹)
docs目录下是MySQL的帮助文档
include目录和lib目录是MySQL所依赖的头文件以及库文件
share目录下保存目录文件以及日志文件。

mysql的shell控制端:C:\Program Files\MySQL\MySQL Shell 8.0\bin\mysqlsh.exe或者C:\ProgramData\Microsoft\Windows\Start Menu\Programs\MySQL\MySQL Shell
MySQL Shell操作参考链接:https://www.cnblogs.com/zengkefu/p/5667037.html
mysql的Workbench端位置:MySQL Workbench 8.0 CE
mysql服务链接客户端:MySQL 8.0 Command Line Client
Mysql服务启动快捷键:MySQL Notifier 1.1.8

参考链接:
MySQL-Installer-community-8.0.13.0 社区版安装解决方案

3.MySQL安装成功与否测试

进入bin目录,按住shift键然后点击鼠标右键可以选择在该目录下打开命令窗口,或者在地址栏中输入cmd进入命令窗口。输入1mysql -u root -p1后回车,然后会提示输入密码,输入密码后就会进入MySQL的操作管理界面。
输入show databases;(注意末尾有分号)可以查看当前MySQL中的数据库列表,
输入use test;可以进入test数据库(前提是要有此数据库),
输入show tables可以查看test数据库中的所有表,
输入quit可以退出MySQL的操作管理界面。

或者使用mysql的Workbench端MySQL Workbench 8.0 CE来连接MySQL服务,看是否能连接上:

又或者使用navicat Prenmium工具测试创建MySQL连接是否成功

4.MySQL在使用过程中遇到的问题

在使用Navicat Premium 12连接MySQL数据库时会出现Authentication plugin ‘caching_sha2_password’ cannot be loaded的错误。
出现这个原因是mysql8 之前的版本中加密规则是mysql_native_password,而在mysql8之后,加密规则是caching_sha2_password, 解决问题方法有两种,一种是升级navicat驱动,一种是把mysql用户登录密码加密规则还原成mysql_native_password.
这里用第二种方式 ,解决方法如下:
①在mysql的bin目录打开cmd窗口,运行:mysql -u root -p 命令,会提示输入密码。

②修改账户密码加密规则并更新用户密码

1
2
3
4
#更新一下用户的密码 
ALTER USER 'root'@'localhost' IDENTIFIED BY 'admin' PASSWORD EXPIRE NEVER; 
#修改加密规则 
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'admin';

③刷新权限并重置密码
FLUSH PRIVILEGES; #刷新权限
现在再次打开Navicat Premium 12连接MySQL问题数据库就会发现可以连接成功了
(上面三个步骤经操作有效,下面的未经测试,效果未知。参考链接https://www.cnblogs.com/zhurong/p/9898675.html)

1
2
3
4
5
6
#单独重置密码命令:
alter user 'root'@'localhost' identified by '111111'
#给root用户设置新密码:
mysql> update user set password=password("123456") where user="root";
#刷新数据库
mysql> flush privileges;

update user set password=password("123456") where user="root";这个对不是5.7版本有效,5.7版本得要update mysql.user set authentication_string=password('*******') where user='*******'

5.MySQLworkbench使用教程

5.1 创建数据库

可以使用工具栏上的创建数据库直接创建数据库,如下图:

或者使用命令:create database 数据库名称;(注意最后有分号)来创建。注意,此方法可能不会立马刷新,可以在左下角点击右键选择Refresh all 来刷新。

5.2 创建表、删除表

可以在你想要创建表的Tables上面点击右键,选择Create Table,或者使用命令create table table_name(column_name column_type);

注意,创建数据表的命令前需要使用use指明你要使用的数据库。(可以在你将要使用的数据库上面点击右键选择Set as Default Schema来使你将要用的数据库变为默认的,这样可以不用写use语句)
通过命令drop table table_name;来删除一张表。

5.3 修改表的名字

通过使用命令:

1
2
3
alter table old_name rename to new_name
#或
rename table old_name to new_name

来更改数据表名。

5.4 为数据表增加、修改、删除字段
1
2
3
4
5
6
#语句来为数据表增加字段。
alter table table_name add column_name column_type;
#语句来修改数据表字段名称。
alter table table_name change column_name new_column_name new_column_name_type;
#删除数据表字段。
alter table table_name drop column_name;

5.5 关于修改数据库名字

在低版本的MySQL中提供了一个命令rename来修改数据库的名称(注意不是数据库的表),不过这个命令会造成数据的丢失,所以这个命令已经被删掉,现在如果想要重命名一个数据库名称的话,需要先导出原有数据库中的所有数据,然后新建一个数据库,然后把导出的数据导入到新的数据库中,最后删掉原来的数据库。整个过程比较繁琐,数据量大的时候会非常浪费时间,所以不推荐修改数据库的名字,因此在给数据库命名的时候要考虑好应该给数据库起一个合理的名字。

最后,附上MySQL Workbench汉化解决方案链接:https://blog.csdn.net/weixin_40845165/article/details/84105822,感兴趣的可以自行配置。

PostgreSql安装

pgsql 9.4.26版本的可以在本机win10 正常安装
12.3-1版本会报error running icacls异常。(网上说postgreSQL9需要vc2013;postgreSQL10需要vc2017,但真实性不确定)

1.PostgreSql的获取与安装

获取安装包:https://www.enterprisedb.com/downloads/postgres-postgresql-downloads

点击下载的安装包开始安装

选择程序安装目录

选择数据存放目录

输入数据库超级用户和创建的OS用户的密码

注:数据库超级用户是一个非管理员账户,这是为了减少黑客利用在 PostgreSQL 发现的缺陷对系统造成损害,因此需要对数据库超级用户设置密码。

设置服务监听端口,默认为5432

选择运行时语言环境

注:选择数据库存储区域的运行时语言环境(字符编码格式)。
在选择语言环境时,若选择”default locale”会导致安装不正确;同时,PostgreSQL 不支持 GBK 和 GB18030 作为字符集,如果选择其它四个中文字符集:中文繁体 香港(Chinese[Traditional], Hong Kong S.A.R.)、中文简体 新加坡(Chinese[Simplified], Singapore)、中文繁体 台湾(Chinese[Traditional], Taiwan)和中文繁体 澳门(Chinese[Traditional], Marco S.A.R.),会导致查询结果和排序效果不正确。建议选择”C”,即不使用区域。

安装过程


安装完成

安装完成后,从开始文件夹可以看到

安装目录可以看到

其中:data存放数据文件、日志文件、控制文件、配置文件等。uninstall-postgresql.exe用于卸载已安装的数据库管理系统。
安装参考链接:https://blog.csdn.net/u012325865/article/details/81951916

2.PostgreSql在使用过程中遇到的问题

2.1 无法连接服务器

进行安装,安装完成后,在运行bin目录下的psql.exe -U postgres 命令后显示:

其实产生这样的原因很简单,那是因为没有连接服务器—–psqlgres并没有启动,导致没有服务可连。接下来是启动的步骤:
①.在电脑左下角处搜索—-控制面板
②.右键桌面上的我的电脑—-选择管理
③.进入管理工具找到其中的—服务,并双击进入
④.在服务中找到postgresql提供的服务,查看postgresql的服务是否启动,没有启动就启动该服务。如果没有postgresql服务选项,说明postgresql没有注册到服务目录中,将postgresql注册到服务列表中的步骤在文章后面介绍。

⑤. 最后测试一下,是否已经启动(解决问题)。

2.2 安装postgresql后找不到服务 postgresql service

使用postgresql-9.4.26-1-windows-x64.exe安装后,让电脑重新启动,但是重启后,依然没有在服务中找到pstgresql的服务,也就没有办法启动服务。并且查看pgsql的安装目录,data也是空的(或者不是空的)。因此需要自己注册服务,cd 到pgsql的安装目录的bin目录下,我的是:D:\work\study\postgresql\9.4.26\bin
之后运行以下命令:

1
pg_ctl.exe register -N PostgreSQL -D D:\work\study\postgresql\9.4.26\data\

每个版本的这个命令的格式可能有差别,可以使用pg_ctl.exe --help来查看语法格式。注意-D 指定data的目录。之后就注册承重。

启动

1
.\pg_ctl.exe -D ..\data\ -l D:\work\study\postgresql\9.4.26\log\logfile.LOG start

这样日志就在D:\work\study\postgresql\9.4.26\log\logfile.LOG(该日志目录并不是在安装过程自动创建的,需要手动创建,或者指定其他目录文件)中生成,并且也启动了服务。
参考链接:https://www.cnblogs.com/heenhui2016/p/11613423.html