「今日分享」一款数据库的安装教程
今日分享一款数据库的安装教程–PostgreSql,以及和mysql数据库的使用对比。
前言
各位朋友们大家好,本期文章中主要说明的内容有:
1、PostgreSql的使用优缺点。
2、PostgreSql基本(部分)查询语法介绍(含测试截图)。
3、PostgreSql和mysql对比。
PostgreSQL 是一个免费的对象-关系数据库服务器(ORDBMS),在灵活的BSD许可证下发行。
PostgreSQL 开发者把它念作 post-gress-Q-L。
PostgreSQL 的 Slogan 是 “世界上最先进的开源关系型数据库”。
简介
PostgreSQL是一个功能非常强大的、源代码开放的客户/服务器关系型数据库管理系统(RDBMS)。PostgreSQL最初设想于1986年,当时被叫做Berkley Postgres Project。该项目一直到1994年都处于演进和修改中,直到开发人员Andrew Yu和Jolly Chen在Postgres中添加了一个SQL(Structured Query Language,结构化查询语言)翻译程序,该版本叫做Postgres95, 在开放源代码社区发放。
PostgreSQL 的 主要优点如下:
1、维护者是PostgreSQL Global Development Group,首次发布于1989年6月。
2、操作系统支持WINDOWS、Linux、UNIX、MAC OS X、BSD。
3、从基本功能上来看,支持ACID、关联完整性、数据库事务、Unicode多国语言。
4、表和视图方面,PostgreSQL支持临时表,而物化视图,可以使用PL/pgSQL、PL/Perl、PL/Python或其他过程语言的存储过程和触发器模拟。
5、索引方面,全面支持R-/R+tree索引、哈希索引、反向索引、部分索引、Expression 索引、GiST、GIN(用来加速全文检索),从8.3版本开始支持位图索引。
6、其他对象上,支持数据域,支持存储过程、触发器、函数、外部调用、游标
7、数据表分区方向 面,支持4种分区,即范围、哈希、混合、列表。
8、从事务的支持度上看,对事务的支持与MySQL相比,经历了更为彻底的测试。
9、My ISAM表处理方式方面,MySQL对于无事务的MyISAM表,采用表锁定,1个长时间运行的查询很可能会阻碍对表的更新,而PostgreSQL不存在这样的问题。
10、从存储过程上看,PostgreSQL支持存储过程。因为存储过程的存在也避免了在网络上大量传播 始的SQL语句的传输,这样的优势是显而易见的。
11、用户定义函数的扩展方面,PostgreSQL可以更方便地使用UDF(用户定义函数)进行扩展。
PostgreSQL 的 应用的劣势如下:
1、最新版本和历史版本不分离存储,导致清理老旧版本时需要做更多的扫描,代价比较大但一般 的数据库都有高峰期,如果合理安排VACUUM,这也不是很大的问题,而且在PostgreSQL9.0中VACUUM进一步被加强了。
2、在PostgreSQL中,由于索引完全没有版本信息,不能实现Coverage index scan,即查询只扫描索引,不能直接从索引中返回所需的属性,还需要访问表,而Oracle与Innodb则可以。
安装步骤以及操作说明请参考(本文不再):
安装请参照:https://www.runoob.com/postgresql/windows-install-postgresql.html
安装成功但连接失败
使用navicat连接本地PostgreSQL数据库时报错:
could not connect to server: Connection refused (0x0000274D/10061) Is the server running on host\”localhost\” (:1) and acceptingTCP/IP connections on port 5433 ?
首先检查一下是不是没有启动PostgreSQL服务,因为没启动服务可能会报这个错误(我就是); 方法如下:
win+R打开输入命令框,输入services.msc打开服务列表。右键启动
再次尝试连接数据库,看是否成功,如果没成功那就进行以下步骤:
1、在postgresql的安装文件夹\\9.5\\data\\pg_hba.conf里面找到“# IPv4 local connections:”
然后在这行上面添加“local pgsql all trust”,
在它下面的“host all all 127.0.0.1/32 md5”
下面添加一行,内容为“host all all 192.168.91.1/24 md5”
注:127.0.0.1/32和192.168.91.1/24中的32与24,用32表示该IP被固定,用24表示前3位固定, 后面一位可以由自己设,这样,前3位ip地址与该设定相同的计算机就可以访问postgresql数据库。
2、PostgreSQL\\9.5\\data\\postgresql.conf文件中,找到“#listen_addresses = ‘localhost’”,把它改成“listen_addresses = ‘*’”。这样,postgresql就可以监听所有ip地址的连接。
3、然后重启postgresql服务。如果系统启用了防火墙,请先关闭。如果要使用pgadmin连接远程 的数据库服务器,须在SSL的选项中选择允许。
MySQL 与 PostgreSQL 的语法对比(常用语法介绍)
Mysql 与 PostgreSQL 的SQL语法对比
Mysql 与 PostgreSQL的基本语法相同,只不过PostgreSQL比MySQL多一些语法功能实践(demo)
PostgreSQL动态演示
PostgreSQL两种分页方法查询
LIMIT和OFFSET
LIMIT : 限制取多少条数据。
OFFSET : 跳过多少条数据然后取后续数据。
第一种
SELECT * FROM test_table WHERE i_id>1000 limit 100;
第二种
SELECT * FROM test_table limit 100 OFFSET 1000;
在3000W数据的时候,建议使用第一种.
mysql 的分页就非常简单了
SELECT * FROM test_table limit 100, 10;
mysql里分页一般用limit来实现
select* from article LIMIT 1,3
select * from article LIMIT 3 OFFSET 1
当limit后面跟两个参数的时候,第一个数表示要跳过的数量,后一位表示要取的数量 上面两种写法都表示取2,3,4三条条数据
总结
mysql 与 postgreSQL的分页最后两个参数正好意思相反
PostgreSQL 常用函数
PostgreSQL 内置函数也称为聚合函数,用于对字符串或数字数据执行处理。下面是所有通用 PostgreSQL 内置函数的列表:
COUNT 函数:用于计算数据库表中的行数。MAX 函数:用于查询某一特定列中最大值。MIN 函数:用于查询某一特定列中最小值。AVG 函数:用于计算某一特定列中的平均值。SUM 函数:用于计算数字列所有值得总和。
ARRAY 函数:用于输入值(包括null)添加到数组中。Numeric 函数:完整列出一个 SQL 中所需的操作数的函数。String 函数:完整列出一个 SQL 中所需要操作字符的函数。
总结:与MySQL 的常用函数基本相同
PostgreSQL 模式
PostgreSQL 模式(SCHEMA)可以看着是一个表的集合。
一个模式可以包含视图、索引、数据类型、函数和操作符等。
相同的对象名称可以被用于不同的模式中而不会出现冲突,例如 schema1 和 myschema 都可以包含名为 mytable 的表。
使用模式的优势:
允许多个用户使用一个数据库并且不会互相干扰。
将数据库对象组织成逻辑组以便更容易管理。
第三方应用的对象可以放在独立的模式中,这样它们就不会与其他对象的名称发生冲突。
模式类似于操作系统层的目录,但是模式不能嵌套。
特别注意:
在不同模式下使用相同的表时,在查询时需要添加模式的名称以用来进行数据的区分。不添加默认标识查询public下的表数据。
MySQL和Postgresql的区别
一.PostgreSQL相对于MySQL的优势
1、在SQL的标准实现上要比MySQL完善,而且功能实现比较严谨;
2、存储过程的功能支持要比MySQL好,具备本地缓存执行计划的能力;
3、对表连接支持较完整,优化器的功能较完整,支持的索引类型很多,复杂查询能力较强;
4、PG主表采用堆表存放,MySQL采用索引组织表,能够支持比MySQL更大的数据量。
5、PG的主备复制属于物理复制,相对于MySQL基于binlog的逻辑复制,数据的一致性更加可靠,复制 性能更高,对主机性能的影响也更小。
6、MySQL的存储引擎插件化机制,存在锁机制复杂影响并发的问题,而PG不存在。
二、MySQL相对于PG的优势:
1、innodb的基于回滚段实现的MVCC机制,相对PG新老数据一起存放的基于XID的MVCC机制,是占优 的。新老数据一起存放,需要定时触 发VACUUM,会带来多余的IO和数据库对象加锁开销,引起数据库整体的并发能力下降。而且VACUUM清理不及时,还可能会引发数据膨胀;
2、MySQL采用索引组织表,这种存储方式非常适合基于主键匹配的查询、删改操作,但是对表结构设 计存在约束;
3、MySQL的优化器较简单,系统表、运算符、数据类型的实现都很精简,非常适合简单的查询操作;
4、MySQL分区表的实现要优于PG的基于继承表的分区实现,主要体现在分区个数达到上千上万后的处 理性能差异较大。
5、MySQL的存储引擎插件化机制,使得它的应用场景更加广泛,比如除了innodb适合事务处理场景 外,myisam适合静态数据的查询场景。
三、总体上来说
开源数据库都不是很完善,商业数据库oracle在架构和功能方面都还是完善很多的。从应用场景来说, PG更加适合严格的企业应用场景(比如金融、电信、ERP、CRM),而MySQL更加适合业务逻辑相对简单、数据可靠性要求较低的互联网场景(比如google、facebook、alibaba)。
本期的文档整理参考部分网上资源和自己实际测试内容加上自己理解的,如有不对,多多指教。第一次发表文档记录。欢迎您的点赞关注。
近期即将更新 :基于POI封装后的导入导出excel版(教程)
MySQL新手入门:MySQL数据库的安装
作为一个数据分析师,经常要和数据打交道,而数据存储在数据库中,所以掌握一些数据库知识是很有必要的。
数据库有很多种,作为初学者,推荐大家学习MySQL数据库,原因有以下三点。
1. 使用广泛,很多公司都使用MySQL数据库,包括国内很多大型互联网公司。
2. 入门简单,从简单的开始学习,有助于增加我们学习的信心。
3. 学好了MySQL,再去学其他数据库都是类似的、相通的。
MySQL的安装主要有两种以下方式:
1、通过图形化的界面安装,就是下载MySQL的安装包,双击运行后,直接下一步、下一步即可;
2、通过命令行安装,就是下载MySQL的压缩文件,解压后,再通过命令行对MySQL进行配置。
这里,推荐大家用第一种安装方式,简单易学。
在Windows下,我们可以通过MySQL Installer来安装MySQL。
通过MySQL Installer安装两个东西:
1、MySQL Server:MySQL服务器
2、MySQL Workbench:写SQL代码的工具。
写SQL代码的工具当然也可以直接使用命令行窗口或者Navicat等其他工具,不过其他很多工具都是需要付费的,所以学习的时候最好使用Workbench这个工具,MySQL官方出品,而且免费。
MySQL安装步骤分为以下3步。
1、下载MySQL Installer。
2、安装两个组件。
3、配置MySQL Server。
数据分析训练营限时优惠 ¥598 购买
首先,下载MySQL Installer,下载地址为:
https://dev.mysql.com/downloads/windows/installer/
打开这个链接,看到如下页面。
单击第一个【Download】按钮,跳转到如下页面。
点击下方的链接“No thanks, just start my download”即可开始下载。
下载完成后,双击下载后的安装包,出现以下界面。
单击【Next】按钮,即下一步,会看到如下界面。
这里选择安装类型,选择【Full】为完整安装,即安装所有组件。
这里选择【Custom】,个性化安装,即自己选择要安装的组件,然后单击【Next】按钮。
单击【Next】按钮后,看到如下界面。
选择前面提到的两个组件,MySQL Server和MySQL Workbench。
说明:这是之前的截图,选择了三个,最新版的MySQL,MySQL Notifier已经下线了,所以选择另外两个组件即可!
选择完成后,单击【Next】按钮,会看到如下界面。
单击【Execute】按钮,开始下载组件,等待组件下载完成,下载完成之后的界面如下。
组件的状态为“Complete”时,单击【Next】按钮。
接下来,还需要进行最后一步,配置MySQL Server。
单击【Next】按钮,到如下界面。
不用管,直接单击【Next】按钮,到如下界面。
可以看到,MySQL默认的端口为3306,这一步也不用管,直接点击【Next】按钮。
依然不用管,直接单击【Next】按钮,到如下界面。
这一步很重要,需要创建超级管理员root账号的密码,输入一个自己记得住的密码,再重复一次即可,当然也可以创建一个Guest账户,即普通管理员账户,然后单击【Next】按钮。
这一步也不用管,可以看到MySQL的Windows服务名称为MySQL80,单击【Next】按钮。
单击【Execute】按钮,开始应用配置,等待执行完成。
配置完成后,出现如下界面。
单击【Next】按钮,出现安装完成的界面,如下图所示。
可以看到,默认安装后启动MySQL Server,单击【Finish】按钮即可。
以上就是在Windows下通过图形化界面安装MySQL数据库的全部过程。
如果是Mac系统,就没有MySQL Installer了,直接下载MySQL Server和MySQL Workbench双击安装即可。
关于安装MySQL数据库,还有什么更好的方法吗?欢迎讨论。
仅需6步,下载和安装Mysql数据库
https://pan.quark.cn/s/fce11d7e4b54
注:若文件失效,请回复:mysql,获取最新链接!
1、选择typical模式安装
2、这一步是选择服务器配置类型和网络,端口,三种类型(开发计算机,服务器计算机和mysql专用)mysql占用的内存不一样,要是自己个人学习使用建议选择development computer
3、设置Mysql密码
4、将Mysql添加到系统变量
5、进入CMD登录Mysql
更多命令:
(一)登录命令
mysql -u root -p
(二)展示数据库
show databases;
(三)创建数据库
create database my_django;
(四)进入数据库
use my_django;
(五)展示数据库内的表
show tables;
(六)显示表的详细配置信息
desc 表名;
(七)查询表的数据
select * from 表名;
本文作者及来源:Renderbus瑞云渲染农场https://www.renderbus.com
文章为作者独立观点不代本网立场,未经允许不得转载。