PostgreSQL和MySQL的区别
PostgreSQL是一个功能强大的开源对象关系数据库系统,它使用和扩展SQL语言,并结合了许多功能,这些功能可以安全地存储和扩展最复杂的数据工作负载。
PostgreSQL特点
1. PostgreSQL可在所有主要操作系统(即Linux,UNIX(AIX,BSD,HP-UX,SGI IRIX,Mac OS X,Solaris,Tru64)和Windows等)上运行
2. PostgreSQL支持文本,图像,声音和视频,并包括用于C/C++,Java,Perl,Python,Ruby,Tcl和开放数据库连接(ODBC)的编程接口
3. 用户定义函数的扩展方面,PostgreSQL可以更方便地使用UDF(用户定义函数)进行扩展
4. 在PostgreSQL中,表可以设置为从“父”表继承其特征
MySQL是一种开放源代码的关系型数据库管理系统,MySQL数据库系统使用最常用的数据库管理语言进行数据库管理。用于存放持久化数据,将数据存储在硬盘中,读取速度较慢。
MySQL特点
1. MySQL数据库是用C和C++语言编写的,并且使用了多种编辑器进行测试,以保证源码的可移植性
2. 支持多种操作系统,例如:Windows、Linux、Mac OS等等
3. 为多种编程语言提供了API
4. 支持多线程,充分利使用CPU资源
5. 提供TCP/IP、ODBC和JDBC等多种数据库连接途径
6. 提供用于管理、检查、优化数据库操作的管理工具
7. 能够作为一个单独的应用程序应用在客户端服务器网络环境中,也能够作为一个库而嵌入其他的软件
PostgreSQL和MySQL的区别
1. PostgreSQL通过执行Postmaster进程(pg_ctl)启动实例;MySQL通过执行MySQL命令(mysqld)启动实例
2. PostgreSQL可以通过设置postgresql.conf文件中的shared_buffers参数来更新缓冲区缓存;MySQL通过innodb_buffer_pool_size配置参数设置数据缓冲区
3. PostgreSQL支持丰富的认证方法:信任认证、口令认证、Kerberos认证、基于Ident的认证、LDAP认证、PAM认证;MySQL基本只支持密码认证
4. PostgreSQL可以使用pgcrypto库中的函数对列进行加密/解密,可以通过SSL连接实现网络加密;MySQL可以表级指定密码来对数据进行加密,还可以使用AES_ENCRYPT和AES_DECRYPT函数对列数据进行加密和解密,也可以通过SSL连接实现网络加密
5. PostgreSQL用户定义函数可以用PL/pgSQL(专用的过程语言)、PL/Tcl、PL/Perl、PL/Python、SQL和C编写;MySQL用户定义函数可以用SQL、C和 C++编写
6. PostgreSQL支持行前触发器、行后触发器和语句触发器,触发器过程用C编写;MySQL支持行前触发器、行后触发器和语句触发器,触发器语句用过程语言复合语句编写
7. PostgreSQL支持用户自定义类型或域;MySQL不支持用户自定义类型或域
8. PostgreSQL支持主键、外键、唯一、非空和检查约束;MySQL支持主键、外键、唯一和非空约束,对检查约束进行解析,但是不强制实施
PostgreSQL是一个功能强大的开源对象关系数据库系统,它使用和扩展SQL语言,并结合了许多功能,这些功能可以安全地存储和扩展最复杂的数据工作负载。
PostgreSQL特点
1. PostgreSQL可在所有主要操作系统(即Linux,UNIX(AIX,BSD,HP-UX,SGI IRIX,Mac OS X,Solaris,Tru64)和Windows等)上运行
2. PostgreSQL支持文本,图像,声音和视频,并包括用于C/C++,Java,Perl,Python,Ruby,Tcl和开放数据库连接(ODBC)的编程接口
3. 用户定义函数的扩展方面,PostgreSQL可以更方便地使用UDF(用户定义函数)进行扩展
4. 在PostgreSQL中,表可以设置为从“父”表继承其特征
MySQL是一种开放源代码的关系型数据库管理系统,MySQL数据库系统使用最常用的数据库管理语言进行数据库管理。用于存放持久化数据,将数据存储在硬盘中,读取速度较慢。
MySQL特点
1. MySQL数据库是用C和C++语言编写的,并且使用了多种编辑器进行测试,以保证源码的可移植性
2. 支持多种操作系统,例如:Windows、Linux、Mac OS等等
3. 为多种编程语言提供了API
4. 支持多线程,充分利使用CPU资源
5. 提供TCP/IP、ODBC和JDBC等多种数据库连接途径
6. 提供用于管理、检查、优化数据库操作的管理工具
7. 能够作为一个单独的应用程序应用在客户端服务器网络环境中,也能够作为一个库而嵌入其他的软件
PostgreSQL和MySQL的区别
1. PostgreSQL通过执行Postmaster进程(pg_ctl)启动实例;MySQL通过执行MySQL命令(mysqld)启动实例
2. PostgreSQL可以通过设置postgresql.conf文件中的shared_buffers参数来更新缓冲区缓存;MySQL通过innodb_buffer_pool_size配置参数设置数据缓冲区
3. PostgreSQL支持丰富的认证方法:信任认证、口令认证、Kerberos认证、基于Ident的认证、LDAP认证、PAM认证;MySQL基本只支持密码认证
4. PostgreSQL可以使用pgcrypto库中的函数对列进行加密/解密,可以通过SSL连接实现网络加密;MySQL可以表级指定密码来对数据进行加密,还可以使用AES_ENCRYPT和AES_DECRYPT函数对列数据进行加密和解密,也可以通过SSL连接实现网络加密
5. PostgreSQL用户定义函数可以用PL/pgSQL(专用的过程语言)、PL/Tcl、PL/Perl、PL/Python、SQL和C编写;MySQL用户定义函数可以用SQL、C和 C++编写
6. PostgreSQL支持行前触发器、行后触发器和语句触发器,触发器过程用C编写;MySQL支持行前触发器、行后触发器和语句触发器,触发器语句用过程语言复合语句编写
7. PostgreSQL支持用户自定义类型或域;MySQL不支持用户自定义类型或域
8. PostgreSQL支持主键、外键、唯一、非空和检查约束;MySQL支持主键、外键、唯一和非空约束,对检查约束进行解析,但是不强制实施