主流数据库总结分析一下,希望大家多补充问题

本文对比了SQLServer、Oracle、MySQL等主流数据库系统在开放性、可伸缩性、安全性、性能等方面的特点,并详细分析了各自的优缺点。

今天事情不是太多,就在网上整理一下对主流数据库的分析总结:

目前比较主流的数据库:ORACLE,DB2,SQLSERVER,MySQL,ACCESS,KingBase 等;

大型数据库有:Oracle、Sybase、DB2、SQL server

小型数据库有:Access、MySQL等

---------------------------------------------------------------------------------------------------------------------------------------------------

一、开放性

1. SQL Server

只能在windows上运行,没有丝毫的开放性,操作系统的系统的稳定对数据库是十分重要的。Windows9X系列产品是偏重于桌面应用,NT server只适合中小型企业。而且windows平台的可靠性,安全性和伸缩性是非常有限的。它不象unix那样久经考验,尤其是在处理大数据库。

2. Oracle

能在所有主流平台上运行(包括 windows)。完全支持所有的工业标准。采用完全开放策略。可以使客户选择最适合的解决方案。对开发商全力支持。

3. Sybase ASE

能在所有主流平台上运行(包括 windows)。 但由于早期Sybase与OS集成度不高,因此VERSION11.9.2以下版本需要较多OS和DB级补丁。在多平台的混合环境中,会有一定问题。

4. DB2

能在所有主流平台上运行(包括windows)。最适于海量数据。DB2在企业级的应用最为广泛,在全球的500家最大的企业中,几乎85%以上用DB2数据库服务器,而国内到97年约占5%。

二、可伸缩性,并行性

1. SQL server

并行实施和共存模型并不成熟,很难处理日益增多的用户数和数据卷,伸缩性有限。

2. Oracle

并行服务器通过使一组结点共享同一簇中的工作来扩展windownt的能力,提供高可用性和高伸缩性的簇的解决方案。如果windowsNT不能满足需要,用户可以把数据库移到UNIX中。Oracle的并行服务器对各种UNIX平台的集群机制都有着相当高的集成度。

3. Sybase ASE

虽然有DB SWITCH来支持其并行服务器,但DB SWITCH在技术层面还未成熟,且只支持版本12.5以上的ASE SERVER。DB SWITCH技术需要一台服务器充当SWITCH,从而在硬件上带来一些麻烦。

4. DB2

具有很好的并行性。DB2把数据库管理扩充到了并行的、多节点的环境。数据库分区是数据库的一部分,包含自己的数据、索引、配置文件、和事务日志。数据库分区有时被称为节点安全性。

三、安全认证

1. SQL server

没有获得任何安全证书。

2. Oracle Server

获得最高认证级别的ISO标准认证。

3. Sybase ASE

获得最高认证级别的ISO标准认证。

4. DB2

获得最高认证级别的ISO标准认证。

四、性能

1. SQL Server

多用户时性能不佳

2. Oracle

性能最高, 保持开放平台下的TPC-D和TPC-C的世界记录。

3. Sybase ASE

性能接近于SQL Server,但在UNIX平台下的并发性要优与 SQL Server。

4. DB2

性能较高适用于数据仓库和在线事物处理。

五、客户端支持及应用模式

1. SQL Server

C/S结构,只支持windows客户,可以用ADO、DAO、OLEDB、ODBC连接。

2. Oracle

多层次网络计算,支持多种工业标准,可以用ODBC、JDBC、OCI等网络客户连接。

3. Sybase ASE

C/S结构,可以用ODBC、Jconnect、Ct-library等网络客户连接。

4. DB2

跨平台,多层结构,支持ODBC、JDBC等客户。

六、操作简便

1. SQL Server

操作简单,但只有图形界面。

2. Oracle

较复杂,同时提供GUI和命令行,在windowsNT和unix下操作相同。

3. Sybase ASE

较复杂,同时提供GUI和命令行。但GUI较差,常常无法及时状态,建议使用命令行。

4. DB2

操作简单,同时提供GUI和命令行,在windowsNT和unix下操作相同。

七、使用风险

1. SQL server

完全重写的代码,经历了长期的测试,不断延迟,许多功能需要时间来证明。并不十分兼容。

2. Oracle

长时间的开发经验,完全向下兼容。得到广泛的应用。完全没有风险。

3. Sybase ASE

向下兼容, 但是ct-library 程序不益移植。

4. DB2

在巨型企业得到广泛的应用,向下兼容性好。风险小。

 

-----------------------------------------------------------------------------------------------------------------------------

sqlserver、Mysql、Oracle三种数据库的优缺点总结

一、sqlserver
优点:
易用性、适合分布式组织的可伸缩性、用于决策支持的数据仓库功能、与许多其他服务器软件紧密关联的集成性、良好的性价比等;
为数据管理与分析带来了灵活性,允许单位在快速变化的环境中从容响应,从而获得竞争优势。从数据管理和分析角度看,将原始数据转化为商业智能和充分利用Web带来的机会非常重要。作为一个完备的数据库和数据分析包,SQLServer为快速开发新一代企业级商业应用程序、为企业赢得核心竞争优势打开了胜利之门。作为重要的基准测试可伸缩性和速度奖的记录保持者,SQLServer是一个具备完全Web支持的数据库产品,提供了对可扩展标记语言 (XML)的核心支持以及在Internet上和防火墙外进行查询的能力;

缺点:
开放性 :SQL Server 只能windows上运行没有丝毫开放性操作系统系统稳定对数据库十分重要Windows9X系列产品偏重于桌面应用NT server只适合小型企业而且windows平台靠性安全性和伸缩性非常有限象unix样久经考验尤其处理大数据库;
伸缩性并行性 :SQL server 并行实施和共存模型并成熟难处理日益增多用户数和数据卷伸缩性有限;
安全性:没有获得任何安全证书。
性能 :SQL Server 多用户时性能佳 ;
客户端支持及应用模式: 客户端支持及应用模式。只支持C/S模式,SQL Server C/S结构只支持windows客户用ADO、DAO、OLEDB、ODBC连接;
使用风险:SQL server 完全重写代码经历了长期测试断延迟许多功能需要时间来证明并十分兼容;
二、Oracle
优点:
开放性:Oracle 能所有主流平台上运行(包括 windows)完全支持所有工业标准采用完全开放策略使客户选择适合解决方案对开发商全力支持;
可伸缩性,并行性:Oracle 并行服务器通过使组结点共享同簇工作来扩展windownt能力提供高用性和高伸缩性簇解决方案windowsNT能满足需要用户把数据库移UNIXOracle并行服务器对各种UNIX平台集群机制都有着相当高集成度;
安全性:获得最高认证级别的ISO标准认证。 
性能:Oracle 性能高 保持开放平台下TPC-D和TPC-C世界记录;
客户端支持及应用模式:Oracle 多层次网络计算支持多种工业标准用ODBC、JDBC、OCI等网络客户连接
使用风险:Oracle 长时间开发经验完全向下兼容得广泛应用地风险低

缺点:
对硬件的要求很高;
价格比较昂贵;
管理维护麻烦一些;
操作比较复杂,需要技术含量较高;

三、MySql
优点:
体积小、速度快、总体拥有成本低,开源;
支持多种操作系统;
是开源数据库,提供的接口支持多种语言连接操作
MySql的核心程序采用完全的多线程编程。线程是轻量级的进程,它可以灵活地为用户提供服务,而不过多的系统资源。用多线程和C语言实现的MySql能很容易充分利用CPU;
MySql有一个非常灵活而且安全的权限和口令系统。当客户与MySql服务器连接时,他们之间所有的口令传送被加密,而且MySql支持主机认证;
支持ODBC for Windows, 支持所有的ODBC 2.5函数和其他许多函数, 可以用Access连接MySql服务器, 使得应用被扩展;
支持大型的数据库, 可以方便地支持上千万条记录的数据库。作为一个开放源代码的数据库,可以针对不同的应用进行相应的修改。
拥有一个非常快速而且稳定的基于线程的内存分配系统,可以持续使用面不必担心其稳定性;
MySQL同时提供高度多样性,能够提供很多不同的使用者介面,包括命令行客户端操作,网页浏览器,以及各式各样的程序语言介面,例如C+,Perl,Java,PHP,以及Python。你可以使用事先包装好的客户端,或者干脆自己写一个合适的应用程序。MySQL可用于Unix,Windows,以及OS/2等平台,因此它可以用在个人电脑或者是服务器上;

缺点:
不支持热备份;
MySQL最大的缺点是其安全系统,主要是复杂而非标准,另外只有到调用mysqladmin来重读用户权限时才发生改变;
没有一种存储过程(Stored Procedure)语言,这是对习惯于企业级数据库的程序员的最大限制;
MySQL的价格随平台和安装方式变化。Linux的MySQL如果由用户自己或系统管理员而不是第三方安装则是免费的,第三方案则必须付许可费。Unix或Linux 自行安装 免费 、Unix或Linux 第三方安装 收费;


 

<think>好的,用户现在想找支持Tab自动补全命令的数据库管理工具。我之前已经回答了关于FLUSH PRIVILEGES的问题,现在需要根据用户提供的引用和新请求来推荐工具。首先,回顾用户提供的引用,里面提到了几种工具:MyCLI、psql的自动补全,还有MySQL本身的自动补全配置。 用户之前的问题是关于FLUSH PRIVILEGES的,但现在的需求转向了工具推荐。需要确保回答覆盖用户提到的所有相关工具,同时结合引用中的信息。引用1到5中,主要提到的工具是MyCLI,以及MySQL命令行工具的自动补全配置,还有PostgreSQL的psql。用户可能主要使用MySQL,但也可能对其他数据库感兴趣,所以应该涵盖数据库的工具。 首先,用户明确想要支持Tab补全的工具,所以需要分点推荐,每个工具的特点、安装方法、使用示例都要详细。同时,用户可能希望知道不同数据库对应的工具,比如MySQL、PostgreSQL、通用工具等。引用中提到MyCLI次,应该作为重点推荐,因为它专为MySQL设计,具有自动补全和语法高亮。另外,MySQL原生命令行工具在配置后也可以启用补全,但需要修改配置文件,这点需要注意。 还要注意用户可能提到的其他工具,比如pgcli(Postgres的类似工具),以及通用工具如DBeaver或DataGrip。这些虽然引用中没有提到,但属于常见的推荐,可以补充进去,但需要标注是扩展推荐。 另外,用户引用中提到了psql的Tab补全原理,但用户的问题是关于工具推荐,所以可能需要简要说明psql本身支持补全,但不需要深入原理。需要确认用户是否需要安装或配置步骤,比如MyCLI的安装命令,yum安装的方法,或者通过pip安装。 可能需要注意用户的环境,比如是否使用Linux,因为引用中提到了yum安装和修改/etc/my.cnf,所以推荐工具时需要说明不同系统的安装方法。例如,MyCLI可以通过pip安装,而pgcli可能也是如此。 最后,用户可能希望知道这些工具的特点对比,比如是否支持语法高亮、跨平台、是否需要额外配置等。需要整理这些信息,以帮助用户做出选择。 总结步骤: 1. 根据引用重点推荐MyCLI,说明其功能、安装方法(yum或pip)、使用示例。 2. 提到MySQL命令行工具本身的自动补全配置,需要修改my.cnf,但可能不如MyCLI强大。 3. 推荐PostgreSQL的psql和pgcli,说明psql自带补全,pgcli增强功能。 4. 补充其他通用工具如DBeaver、DataGrip、Beekeeper Studio,作为图形化选项。 5. 对比表格,总结各工具特点,帮助用户选择。 6. 注意事项,如安装方法、配置步骤,确保用户能顺利使用。 需要确保回答结构清晰,分点明确,引用相关引用来源,比如引用3、4、5提到的MyCLI,引用2提到的psql。同时,用户可能误将一些安装配置的内容放在引用中,需要正确引导,例如MyCLI的安装步骤。注意不要混淆MyCLI和原生的MySQL配置,用户可能之前尝试过修改my.cnf,但MyCLI是独立工具,需要明确区分。</think>### 支持 Tab 自动补全的数据库管理工具推荐 根据引用内容和实际需求,以下是支持 **Tab 自动补全命令**的数据库工具分类推荐,涵盖命令行工具和图形化工具,并附详细说明与使用示例。 --- #### 一、**MySQL/MariaDB 专用工具** 1. **MyCLI** - **核心功能**: - 专为 MySQL/MariaDB 设计的命令行工具,支持**智能 Tab 补全**(自动补全表名、列名、函数等)。 - 语法高亮、行编辑、历史命令记录[^3][^4][^5]。 - **安装方式**: ```bash # 通过 pip 安装(推荐) pip install mycli # 通过 yum 安装(部分 Linux 发行版) yum install mycli ``` - **使用示例**: ```bash mycli -u root -p # 连接数据库后,输入 SQL 时按 Tab 键触发补全 ``` ![MyCLI 自动补全示例](https://www.mycli.net/_static/screenshot.png) *(官网示例:补全表名和列名)* 2. **原生 MySQL 命令行工具(需配置)** - **启用补全**: 修改 MySQL 配置文件(如 `/etc/my.cnf`),在 `[mysql]` 部分添加: ```ini [mysql] auto-rehash # 启用自动补全[^3][^4] ``` - **限制**: - 补全功能较基础(仅补全关键字和数据库对象名称)。 - 需要重启 MySQL 客户端生效。 --- #### 二、**PostgreSQL 专用工具** 1. **psql(原生客户端)** - **功能**: - 内置 Tab 补全(支持表名、函数、模式等),依赖 `readline` 库实现[^2]。 - **使用示例**: ```bash psql -U postgres # 连接后输入命令时按 Tab 补全 ``` 2. **pgcli** - **功能**: - 类似于 MyCLI 的增强版命令行工具,支持**智能补全**和语法高亮。 - **安装**: ```bash pip install pgcli ``` --- #### 三、**跨数据库通用工具** 1. **DBeaver(图形化工具)** - **功能**: - 支持 MySQL、PostgreSQLOracle主流数据库。 - SQL 编辑器内置**自动补全**(表名、列名、关键字)。 - **特点**: - 跨平台(Windows/macOS/Linux)。 - 社区版免费。 2. **DataGrip(JetBrains 出品)** - **功能**: - 高级代码补全(基于上下文分析的智能提示)。 - 支持数据库(需安装对应驱动)。 - **适用场景**: - 适合开发者和数据分析师。 3. **Beekeeper Studio(开源图形化工具)** - **功能**: - 支持 Tab 补全和语法高亮。 - 轻量级,界面简洁。 --- ### 工具对比与选型建议 | 工具名称 | 数据库支持 | 补全能力 | 适用场景 | |------------|-----------------|----------------|-------------------------| | **MyCLI** | MySQL/MariaDB | 智能上下文补全 | 命令行重度用户 | | **pgcli** | PostgreSQL | 智能上下文补全 | PostgreSQL 开发者 | | **DBeaver**| 数据库 | 基础对象补全 | 图形化操作优先 | | **psql** | PostgreSQL | 基础补全 | 轻量级 PostgreSQL 管理 | --- ### 注意事项 1. **命令行工具依赖环境**: - MyCLI 和 pgcli 需 Python 环境,建议通过 `pip` 安装最新版本。 2. **权限问题**: - 若补全失效,检查数据库用户是否有权限访问 `information_schema`(MyCLI/pgcli 依赖元数据)。 3. **图形化工具配置**: - DBeaver 或 DataGrip 需正确配置数据库驱动(如 JDBC 连接)。 --- ### 扩展推荐(非引用内容) - **MySQL Shell**:官方高级命令行工具,支持 JavaScript/Python 模式,提供增强补全功能。 - **Adminer**:轻量级 Web 端工具,支持基础补全。 如需进一步了解具体工具的配置细节或使用技巧,可提供更具体的场景需求!
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

sunday_code

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值