精华内容
下载资源
问答
  • DBA的职责:● 安装和升级数据库服务器,以及应用程序工具。● 数据库设计系统存储方案,并制定未来的存储需求计划。一旦开发人员设计了一个应用,就需要DBA来创建数据库存储结构(tablespaces)。一旦开发人员设计....

    MySQL DBA意思是MySQL数据库管理员,DBA就是数据库管理员的意思。要成为MySQL DBA,不是会哪些东西的问题,而是一定要对MySQL数据库方方面面都得非常精通才行。

    e9feaa09cd4d8f36192ecfe08545e668.png

    DBA的职责是:

    ● 安装和升级数据库服务器,以及应用程序工具。

    ● 数据库设计系统存储方案,并制定未来的存储需求计划。

    一旦开发人员设计了一个应用,就需要DBA来创建数据库存储结构(tablespaces)。

    一旦开发人员设计了一个应用,就需要DBA来创建数据库对象(tables,views,indexes)。

    ● 根据开发人员的反馈信息,必要的时候,修改数据库的结构。

    ● 登记数据库的用户,维护数据库的安全性。

    ● 保证数据库的使用符合知识产权相关法规。

    ● 控制和监控用户对数据库的存取访问。

    ● 监控和优化数据库的性能。

    ● 制定数据库备份计划,灾难出现时对数据库信息进行恢复

    维护适当介质上的存档或者备份数据

    备份和恢复数据库

    联系数据库系统的生产厂商,跟踪技术信息。

    展开全文
  • 另外,无论怎样升级硬件资源,单台服务器的资源(CPU、磁盘、内存、网络IO、事务数、连接数)总是有限的,最终数据库所能承载的数据量、数据处理能力都将遭遇瓶颈。分表、分库和读写分离可以有效地减小单台数据库的...

    f62c6d26d87793eb9d2ed002b4e186d2.png

    1.前言

    随着业务的发展,MySQL数据库中的表会越来越多,表中的数据量也会越来越大,相应地,数据操作的开销也会越来越大;另外,无论怎样升级硬件资源,单台服务器的资源(CPU、磁盘、内存、网络IO、事务数、连接数)总是有限的,最终数据库所能承载的数据量、数据处理能力都将遭遇瓶颈。

    分表、分库和读写分离可以有效地减小单台数据库的压力。

    本文主要针对业界主流的数据库中间件的实现、功能、成本等方面进行对比,总结数据库中间件的实现方式,并展望未来的可能发展。

    2. 实现方式

    一般来说,对于数据库中间件,可以在以下六个层次做切入。

    e959a3963e4ef2d4af86f8c3a95a3914.png

    2.1 代码层

    在同一个项目中创建多个数据源,采用if else的方式,直接根据条件在代码中路由。

    Spring中有动态切换数据源的抽象类,具体参见AbstractRoutingDataSource。

    如果项目不是很庞大,使用这种方式能够快速的进行分库。但缺点也是显而易见的,这种海量的代码侵入是绝不能被接受的。

    而且当查询结果返回时,需要对跨库、聚合等查询结果进行归并,开发工作量非常巨大。

    这种方式了解一下即可,一般不会去使用。

    2.2 框架层

    主要是修改或增强现有ORM框架的功能,在SQL中增加一些自定义原语或者hint来实现。

    常见的比如实现一些拦截器(比如Mybatis的Interceptor接口),增加一些自定义解析来控制数据的流向,效果虽然较好,但会改变一些现有的编程经验。

    这种情况适合公司ORM框架统一的情况,但在很多情况下不太现实。

    而且大部分情况下要修改框架源码,因此,也不推荐。

    2.3 驱动层

    无论是从代码层还是框架层做处理,都是高侵入、难维护的。

    因此,常见的数据库中间件,至少需要从驱动层开始,我们可以理解为一个smart-client。

    什么意思是smart-client呢?

    通常smart-client是在连接池或者driver的基础上进行了一层封装。

    这个smart-client内部可以与不同的数据库建立连接。

    服务需要查询的sql,就交给smart-client进行解析、优化,然后发送给具体的数据库进行操作。

    例如在读写分离情况下,smart-client会选择sql走从库还是主库;在分库分表的情况下,进行sql解析、sql改写等操作,然后路由到不同的分库,将得到的结果进行合并,返回给应用。

    8efabe82828e873b557299e2ee1d652e.png

    我们熟知的TDDL、Sharding-JDBC等,都是在此层切入。

    优点:

    1)实现方便,业务无入侵。smart-client不需要实现客户端通信协议,只需要在数据数据库厂商提供的不同语言的数据库驱动上做封装即可。例如mysql针对java语言提供了mysql-connector-java驱动,针对python提供了mysql-connector-python驱动。

    2)天然去中心化。smart-client以sdk的方式被应用引入,然后部署到不同的服务节点上,不需要有代理层proxy。因此相较于代理方式而言,不需要考虑高可用的问题。只要应用的节点没有全部宕机,就可以访问数据库。(这里的高可用是相比代理层proxy而言,数据库本身的高可用还是需要保证的)

    缺点:

    1)通常仅支持某一种语言。例如tddl、zebra、sharding-jdbc都是使用java语言开发,因此对于使用其他语言的用户,就无法使用这些中间件。如果其他语言要使用,那么就要开发多语言客户端。

    2)版本升级困难。因为应用使用数据源代理就是引入一个jar包的依赖,在有多个应用都对某个版本的jar包产生依赖时,一旦这个版本有bug,所有的应用都需要升级。而数据库代理升级则相对容易,因为服务是单独部署的,只要升级这个代理服务器,所有连接到这个代理的应用自然也就相当于都升级了。

    3)去中心化的缺点,比如无法做全局的sql限流

    2.4 代理层

    在应用中,我们通过一个普通的数据源(c3p0、druid、dbcp等)与代理服务器建立连接,所有的sql操作语句都是发送给这个代理,由这个代理去操作底层数据库,得到结果并返回给应用。在这种方案下,分库分表和读写分离的逻辑对开发人员是完全透明的。

    bc0026e4b67bfa46932ee37d819bd4ba.png

    像MySQL Router、MyCat、ShardingSphere(proxy模式)等,都是在此层切入。

    优点:

    1)多语言支持。也就是说,不论你用的php、java或是其他语言,都可以支持。以mysql数据库为例,如果proxy本身实现了mysql的通信协议,那么你可以就将其看成一个mysql 服务器,因此不同语言的开发者都可以使用mysql官方提供的对应的驱动来与这个代理服务器建通信。

    2)对业务开发同学透明。由于可以把proxy当成mysql服务器,理论上业务同学不需要进行太多代码改造,既可以完成接入。

    缺点:

    1)实现复杂。因为proxy需要实现被代理的数据库server端的通信协议,实现难度较大。

    2)proxy本身需要保证高可用。由于应用本来是直接访问数据库,现在改成了访问proxy,意味着proxy必须保证高可用。否则,数据库没有宕机,proxy挂了,导致数据库无法正常访问,就尴尬了。

    3)租户隔离。可能有多个应用访问proxy代理的底层数据库,必然会对proxy自身的内存、网络、cpu等产生资源竞争,proxy需要需要具备隔离的能力。

    2.5 Sidecar

    Sharding-Sidecar是ShardingSphere的第三个产品,目前仍然在规划中。 定位为Kubernetes或Mesos的云原生数据库代理,以DaemonSet的形式代理所有对数据库的访问。

    通过无中心、零侵入的方案提供与数据库交互的的啮合层,即Database Mesh,又可称数据网格。 Database Mesh的关注重点在于如何将分布式的数据访问应用与数据库有机串联起来,它更加关注的是交互,是将杂乱无章的应用与数据库之间的交互有效的梳理。使用Database Mesh,访问数据库的应用和数据库终将形成一个巨大的网格体系,应用和数据库只需在网格体系中对号入座即可,它们都是被啮合层所治理的对象。

    96f816c3c48215c7f1ccbb628d669c5b.png

    优点:

    分布式云原生的数据库中间件模式,集成了jdbc和proxy各自的优点,能满足高可用、跨语言、无感知升级等多种优势特性

    缺点:

    需要整体架构支持云原生体系

    目前还没正式上线。

    2.6 存储层

    这个层次实际上不应该叫数据库中间件了,需要更换存储。

    比如Aurora、polardb、tidb等分布式数据库,通过计算节点和存储节点分离,计算节点scale up,存储节点scale out的理念将公有云的关系数据库产品推向了一个新的高度。

    这样一来,实际上已经不再需要传统的数据库中间件了,一切问题天然就不存在了。

    3. 功能对比

    从上文可以了解到,目前最主流的数据库中间件主要是从驱动层smart-client和代理层proxy切入的。

    下面,我们来了解下业界主流的中间件产品在这两个层次的站队情况与实现的功能对比。

    7d4b55d99733b01235b40cea34670584.png

    其他还有比如:

    Atlas、Kingshard、DBProxy、mysql router、MaxScale、58 Oceanus、ArkProxy、Ctrip DAL、Tsharding、Youtube vitess、网易DDB、Heisenberg、proxysql、Mango、DDAL、Datahekr、MTAtlas、

    我们可以看到,基本各个大厂都撸过一遍自己的中间件产品。不过目前开源而且比较火的已经不多了,主要还是以shardingsphere为主。

    我们从功能维度,来对比一下几个产品。

    2b2a6fb6ca8df3eb12b139bd7dd6bb3a.png

    4. 展望

    从上文的分析可以看出,尽管目前主流的数据库中间件还是在smart-client和proxy两个层面进行处理的,但是,已经能看到未来的方向了。云原生的到来,估计会做进一步的降维打击。

    一方面是作为sidecar的模式,可能会有一个新的阶段,比如shardingsphere推出sidecar模式后。

    而另一方面,云数据库通过全新的计算存储分离的架构方式,打破传统关系型数据库的性能瓶颈,传统数据库中间件将不再需要关注,一切都将以数据库基础设施的形式提供给使用者。

    都看到最后了,原创不易,点个关注,点个赞吧~
    知识碎片重新梳理,构建Java知识图谱:https://github.com/saigu/JavaKnowledgeGraph (历史文章查阅非常方便)
    扫码关注我的公众号“阿丸笔记”,第一时间获取最新更新。同时能免费获取海量Java技术栈电子书、各个大厂面试题哦。

    dcd95373221a14802a2779fa5071fe3a.png
    展开全文
  • 另外,无论怎样升级硬件资源,单台服务器的资源(CPU、磁盘、内存、网络IO、事务数、连接数)总是有限的,最终数据库所能承载的数据量、数据处理能力都将遭遇瓶颈。分表、分库和读写分离可以有效地减小单台数据库的...

    c4e4ae19a1487bd3dfbf8d661a977466.gif

    62922a26b110d7bb62db4d2f9c2d28d1.png

    来源 | 阿丸笔记

    封图| CSDN 下载于视觉中国

    806ff48689b6808f6af6835013b153f7.png

    前言

    随着业务的发展,MySQL数据库中的表会越来越多,表中的数据量也会越来越大,相应地,数据操作的开销也会越来越大;另外,无论怎样升级硬件资源,单台服务器的资源(CPU、磁盘、内存、网络IO、事务数、连接数)总是有限的,最终数据库所能承载的数据量、数据处理能力都将遭遇瓶颈。

    分表、分库和读写分离可以有效地减小单台数据库的压力。

    而数据库中间件,也火了很长一段时间,基本上每个大厂都会自研一套。

    本文主要针对业界主流的数据库中间件的实现、功能、成本等方面进行对比,总结数据库中间件的实现方式,并展望未来的可能发展。

    d5840fc58f7af176eed675b6372fb580.png

    实现方式

    一般来说,对于数据库中间件,可以在以下六个层次做切入。

    6a4b1d3ec1a0ec8463a4db90b1239522.png

    2.1 代码层

    在同一个项目中创建多个数据源,采用if else的方式,直接根据条件在代码中路由。

    Spring中有动态切换数据源的抽象类,具体参见AbstractRoutingDataSource。

    如果项目不是很庞大,使用这种方式能够快速的进行分库。但缺点也是显而易见的,这种海量的代码侵入是绝不能被接受的。

    而且当查询结果返回时,需要对跨库、聚合等查询结果进行归并,开发工作量非常巨大。

    这种方式了解一下即可,一般不会去使用。

    2.2 框架层

    主要是修改或增强现有ORM框架的功能,在SQL中增加一些自定义原语或者hint来实现。

    常见的比如实现一些拦截器(比如Mybatis的Interceptor接口),增加一些自定义解析来控制数据的流向,效果虽然较好,但会改变一些现有的编程经验。

    这种情况适合公司ORM框架统一的情况,但在很多情况下不太现实。

    而且大部分情况下要修改框架源码,因此,也不推荐。

    2.3 驱动层

    无论是从代码层还是框架层做处理,都是高侵入、难维护的。

    因此,常见的数据库中间件,至少需要从驱动层开始,我们可以理解为一个smart-client。

    什么意思是smart-client呢?

    通常smart-client是在连接池或者driver的基础上进行了一层封装。

    这个smart-client内部可以与不同的数据库建立连接。

    服务需要查询的sql,就交给smart-client进行解析、优化,然后发送给具体的数据库进行操作。

    例如在读写分离情况下,smart-client会选择sql走从库还是主库;在分库分表的情况下,进行sql解析、sql改写等操作,然后路由到不同的分库,将得到的结果进行合并,返回给应用。

    8b50fcd0775c2f9873a47f01b399eaa5.png

    我们熟知的TDDL、Sharding-JDBC等,都是在此层切入。

    优点:

    1)实现方便,业务无入侵。smart-client不需要实现客户端通信协议,只需要在数据数据库厂商提供的不同语言的数据库驱动上做封装即可。例如mysql针对java语言提供了mysql-connector-java驱动,针对python提供了mysql-connector-python驱动。

    2)天然去中心化。smart-client以sdk的方式被应用引入,然后部署到不同的服务节点上,不需要有代理层proxy。因此相较于代理方式而言,不需要考虑高可用的问题。只要应用的节点没有全部宕机,就可以访问数据库。(这里的高可用是相比代理层proxy而言,数据库本身的高可用还是需要保证的)

    缺点:

    1)通常仅支持某一种语言。例如tddl、zebra、sharding-jdbc都是使用java语言开发,因此对于使用其他语言的用户,就无法使用这些中间件。如果其他语言要使用,那么就要开发多语言客户端。

    2)版本升级困难。因为应用使用数据源代理就是引入一个jar包的依赖,在有多个应用都对某个版本的jar包产生依赖时,一旦这个版本有bug,所有的应用都需要升级。而数据库代理升级则相对容易,因为服务是单独部署的,只要升级这个代理服务器,所有连接到这个代理的应用自然也就相当于都升级了。

    3)去中心化的缺点,比如无法做全局的sql限流

    2.4 代理层

    在应用中,我们通过一个普通的数据源(c3p0、druid、dbcp等)与代理服务器建立连接,所有的sql操作语句都是发送给这个代理,由这个代理去操作底层数据库,得到结果并返回给应用。在这种方案下,分库分表和读写分离的逻辑对开发人员是完全透明的。

    c941d08a3f5c368b995061c55e3b20c5.png

    像MySQL Router、MyCat、ShardingSphere(proxy模式)等,都是在此层切入。

    优点:

    1)多语言支持。也就是说,不论你用的php、java或是其他语言,都可以支持。以mysql数据库为例,如果proxy本身实现了mysql的通信协议,那么你可以就将其看成一个mysql 服务器,因此不同语言的开发者都可以使用mysql官方提供的对应的驱动来与这个代理服务器建通信。

    2)对业务开发同学透明。由于可以把proxy当成mysql服务器,理论上业务同学不需要进行太多代码改造,既可以完成接入。

    缺点:

    1)实现复杂。因为proxy需要实现被代理的数据库server端的通信协议,实现难度较大。

    2)proxy本身需要保证高可用。由于应用本来是直接访问数据库,现在改成了访问proxy,意味着proxy必须保证高可用。否则,数据库没有宕机,proxy挂了,导致数据库无法正常访问,就尴尬了。

    3)租户隔离。可能有多个应用访问proxy代理的底层数据库,必然会对proxy自身的内存、网络、cpu等产生资源竞争,proxy需要需要具备隔离的能力。

    2.5 Sidecar

    Sharding-Sidecar是ShardingSphere的第三个产品,目前仍然在规划中。定位为Kubernetes或Mesos的云原生数据库代理,以DaemonSet的形式代理所有对数据库的访问。

    通过无中心、零侵入的方案提供与数据库交互的的啮合层,即Database Mesh,又可称数据网格。Database Mesh的关注重点在于如何将分布式的数据访问应用与数据库有机串联起来,它更加关注的是交互,是将杂乱无章的应用与数据库之间的交互有效的梳理。使用Database Mesh,访问数据库的应用和数据库终将形成一个巨大的网格体系,应用和数据库只需在网格体系中对号入座即可,它们都是被啮合层所治理的对象。

    e05d798975722c8020c37c0ecc1ec4cb.png

    优点:

    分布式云原生的数据库中间件模式,集成了jdbc和proxy各自的优点,能满足高可用、跨语言、无感知升级等多种优势特性

    缺点:

    需要整体架构支持云原生体系

    目前还没正式上线。

    2.6 存储层

    这个层次实际上不应该叫数据库中间件了,需要更换存储。

    比如Aurora、polardb、tidb等分布式数据库,通过计算节点和存储节点分离,计算节点scale up,存储节点scale out的理念将公有云的关系数据库产品推向了一个新的高度。

    这样一来,实际上已经不再需要传统的数据库中间件了,一切问题天然就不存在了。4cb2ad83a5971c4d23124e93479bc819.png功能对比

    从上文可以了解到,目前最主流的数据库中间件主要是从驱动层smart-client和代理层proxy切入的。

    下面,我们来了解下业界主流的中间件产品在这两个层次的站队情况与实现的功能对比。

    4c188d411cab28c08b7fd096f6a783db.png

    其他还有比如:

    Atlas、Kingshard、DBProxy、mysql router、MaxScale、58 Oceanus、ArkProxy、Ctrip DAL、Tsharding、Youtube vitess、网易DDB、Heisenberg、proxysql、Mango、DDAL、Datahekr、MTAtlas、

    我们可以看到,基本各个大厂都撸过一遍自己的中间件产品。不过目前开源而且比较火的已经不多了,主要还是以shardingsphere为主。

    我们从功能维度,来对比一下几个产品。

    04b3920d568bdda673c5f74ca4499281.png

    b30b696bd5c88da863133830130180f0.png展望

    从上文的分析可以看出,尽管目前主流的数据库中间件还是在smart-client和proxy两个层面进行处理的,但是,已经能看到未来的方向了。云原生的到来,数据库中间件也会拥抱变化。

    一方面是作为sidecar的模式,可能会有一个新的阶段,比如shardingsphere推出sidecar模式后。

    而另一方面,云数据库通过全新的计算存储分离的架构方式,打破传统关系型数据库的性能瓶颈,传统数据库中间件将不再需要关注,一切都将以数据库基础设施的形式提供给使用者。

    aad610a1e338a69fbdf05e7b5c9177cb.png

    5da5795d5eca22f8bc7bb0f11171fb2c.png
    推荐阅读:
    还不知道 AWS 是什么?这 11 个重点带你认识 AWS !数据库连接池的原理没你想得这么复杂为什么程序员如此“嫌弃”主干开发模式?智能合约编写之 Solidity 的设计模式

    2020年,5种将死的编程语言

    我去,同事居然用明文存储密码!!!

    真香,朕在看了!
    展开全文
  • DBA的职责:● 安装和升级数据库服务器,以及应用程序工具。● 数据库设计系统存储方案,并制定未来的存储需求计划。一旦开发人员设计了一个应用,就需要DBA来创建数据库存储结构(tablespaces)。一旦开发人员设计....

    2db8359b62a65837081d9c44f9601408.png

    MySQL DBA意思是MySQL数据库管理员,DBA就是数据库管理员的意思。

    要成为MySQL DBA,不是会哪些东西的问题,而是一定要对MySQL数据库方方面面都得非常精通才行。

    DBA的职责是:

    ● 安装和升级数据库服务器,以及应用程序工具。

    ● 数据库设计系统存储方案,并制定未来的存储需求计划。

    一旦开发人员设计了一个应用,就需要DBA来创建数据库存储结构(tablespaces)。

    一旦开发人员设计了一个应用,就需要DBA来创建数据库对象(tables,views,indexes)。

    ● 根据开发人员的反馈信息,必要的时候,修改数据库的结构。

    ● 登记数据库的用户,维护数据库的安全性。

    ● 保证数据库的使用符合知识产权相关法规。

    ● 控制和监控用户对数据库的存取访问。

    ● 监控和优化数据库的性能。

    ● 制定数据库备份计划,灾难出现时对数据库信息进行恢复

    维护适当介质上的存档或者备份数据

    备份和恢复数据库

    联系数据库系统的生产厂商,跟踪技术信息。

    展开全文
  • DBA的职责:● 安装和升级数据库服务器,以及应用程序工具。● 数据库设计系统存储方案,并制定未来的存储需求计划。一旦开发人员设计了一个应用,就需要DBA来创建数据库存储结构(tablespaces)。一旦开发人员设计....
  • 在经历前面的还原数据库...搞不懂什么意思,千辛万苦网上找资料,依然没有找到。 去查看备份的数据里面,发现有重复的数据 删掉测再次还原,哦哟,OK了,好神奇,看来数据重复的原因,导致冲突。 特此记录。 ...
  • (数据库sql server 2008 r2 RTM版本升级到2012) 1.先介绍sql 2008数据库的几个版本 ...那么sql server 2008后面的sp1,sp2是什么意思呢? 1.Sp1,Sp2 都是软件对应的补丁包, 2.SP2 只是一个补丁包,如果是打过补丁包的s
  • 同时ES还是一个分布式文档数据库,其中每个字段均可被索引,而且每个字段的数据均可被搜索,能够横向扩展至数以百计的服务器存储以及处理PB级的数据。可以在极短的时间内存储、搜索和分析大量的数据。通常作为具有...
  • 概述一般Linux软件安装有这么几种方式:通用二进制格式:直接解压压缩文件,就可以使用...RPM的功能:打包、安装、查询、升级、卸载、校验、数据库管理。1、RPM的缺点由于Linux中的程序大多小程序。程序与程序之间...
  • 代码的注释也少的可怜,而且系统要不断升级,期间做病案的特别痛苦,没数据库说明文档来回去服务器数据库管理系统查询某个表某个字段什么意思及什么数据类型,加之前段采用的flex技术,效率低特别低。今天用该工具...
  • 7后导入之前数据库date出错的快速解决方法【mysql低版本数据导入到高版本出错的解决方法】mysql5.x升级至mysql5.7后导入之前数据库date出错,这由于MySQL的sql_mode的影响,解决方法如下所示: [具体参考:mysql的sql_...
  • 2019年,德国前段时间,遇到朋友的求助,说以前运行的好好的系统现在出问题了,而且看不懂报错到底是什么意思。我仔细看看报错信息,应该是MySQL数据库报出来的,大意是说:collation不兼容,一个是 utf8mb4_0900_ai...
  • 什么是扩展性数据库的扩展主要体现在两个方面,一个横向扩展(Scale Out),另外一个纵向扩展(Scale Up)横向扩展(Scale Out) 向外扩展、通过增加节点的方式来提高整体处理能力,通俗点讲就是通过增加机器来增加...
  • 并利用具体的例子来全面介绍每个特性,不仅讨论了各个特性是什么,还说明了它是如何工作的,如何使用这个特性来开发软件,以及有关的常见陷阱。  本书面向所有oracle 数据库应用开发人员和dba。 作译者 作者  ...
  • 什么时mysql dba

    2019-07-29 20:08:06
    ● 安装和升级数据库服务器,以及应用程序工具。 ● 数据库设计系统存储方案,并制定未来的存储需求计划。 一旦开发人员设计了一个应用,就需要DBA来创建数据库存储结构(tablespaces)。 一旦开...
  • 说到为什么升级是因为,从另一台机器上备份了一个数据库,到我的机器上还原的时候提示“948错误,意思就是不能把高版本的数据库附加到低版本上,所以要升级自己数据库的版本。 注:10.00.1600其实就是SQL 2008 ...
  • my.cnf设置了什么问题,尽管去冷备份好了,如果感觉大,可以tar压缩,压缩效率吓人对于myisam引擎的,拷贝data目录下的数据库文件夹(含MYD,MYI,frm)当然最好用cp -pr 命令,p保存属性的意思。编译安装mysql...
  • 对于 InnoDB 引擎的,拷贝data目录下的ib_logfile0,ib_logfile1,ibdata1和数据库文件夹(里面只有frm文件)  不要惧怕版本啦,my.cnf设置了什么问题,...当然最好用cp -pr 命令,p保存属性的意思。 编译安装mysql
  • 什么是NoSQL “NoSQL”一词最早出现在1998年,距今刚好二十年。站在今天回头看的话,很少有人能想到在关系型数据库成熟发展了三十年,已经在...“NoSQL”最早的意思是“non-relational”,后来又升级为了“Not Onl...
  • 1.如果以前装过版主已阅就不用再升级数据库了~不然会出错哦。。(其实不是真的出错了。。就是提示你已经有了不要再升级了) 2.关于已阅什么的。。 比如一个楼有10张贴 点9楼的回复时,会显示[XXX 阅至 9楼] 点10...
  • 此补丁适用于v7.4所有版本 近期开放的板块: ...什么意思? 答:天猫商城的商品虽然没有参与淘宝客 但是有补贴 所以还是有佣金。 所以你们可以在网站上做个活动,tmall的商品无返利本站额外补贴。
  • jeecms插件

    2016-02-21 10:09:16
    插件的支持我觉得一件很好很强大的事,其实我觉得二次开发jeecms的都可以采用这种方式进行,方便以后的升级和bug修复,不影响原来的代码。下面以本站的jautopost插件为例给大家分享一下,如何开发一个jeecms插件。...
  • 一个牛人提供的GIS源码(很好)

    千次下载 热门讨论 2010-08-25 22:49:21
    可能觉得写的东西没什么水准,并且也不能时常的更新,加上个人感觉自己技术的下降(呵呵,也许本来就没有什么技术),考虑甚多,终于作了这么个决定:Rover's Official Blog停止更新 同时停止更新的Rover's GIS ...
  • 疯狂的程序员

    热门讨论 2012-07-18 18:05:32
    程序员是什么?他不知道。他问:“程序员能找到教书的工作吗?” “当然,一点问题都没有。随便哪个学校都能教。想我那个年代,这城市有多少程序员,数都能数出来。我还报了高程,唉……差一点。” 能去教书当然好,...

空空如也

空空如也

1 2 3
收藏数 49
精华内容 19
关键字:

升级数据库是什么意思