Setup database provider

来自Kooboo document
 

Kooboo CMS can almost support all the types of database, include the relational database and No-SQL database. Right now, we have implemented five types database provider for text content: XML, SQLCe, SQLServer, MySQL and MongoDB.

XML

The xml provider is a configure-less, structure-less and simplest provider. It is the default provider include in the default release package.

The xml provider is also used on the site exporting/importing function. When exporting one site from the Kooboo CMS with non-default providers, the site will be exported as a site package using the default providers. When the site package being to import into a Kooboo CMS instance with non-default providers, it will convert the xml data into the specific database.

Highly recommended used in the development, do not used in the production.

SQLCe

SQLCe provider is a relational database similar with SQLite. It is configure-less but have structure tables. Every sites in the same Kooboo CMS instance will has its owner standalone database file. It usually use in the site which each table with less than 50000 rows data.

All the relational database[SQLCe,SQLServer, Mysql] have the same characteristic is they will always the dynamic tables for each content type, but it transparent to the users.

Usage:

  • Download the Content_Providers.zip.
  • Copy the files under "SQLCe" into the BIN folder of Kooboo CMS.

SQLServer

SQLServer provider have two modes:

  • Standalone mode. Each site will have its database file. In this mode, the user have to provide the "CreateDatabaseSetting" connection string which have create database permission. The site will using the connection setting in the "Connections" section.
  • Shared mode. All the sites in the same instance will use the same database. In this mode, the user have to set "SharingDatabase" as "True", set the "SharingDatabaseConnectionString".

Usage:

  • Download "Content_Providers.zip".
  • Extract the zip file. Copy the files under "SQLServer" include "SQLServer.config" into BIN folder of Kooboo CMS..
  • Create a new database or use the existing database, we call it "Kooboo CMS".
  • Edit the "SQLServer.config" to specify the connection strings.
 
<SqlServerSettings xmlns="http://schemas.datacontract.org/2004/07/Kooboo.CMS.Content.Persistence.SqlServer" xmlns:i="http://www.w3.org/2001/XMLSchema-instance">
<Connections>
<ConnectionSetting>
<ConnectionString>Server=.\SQLExpress;Database=Kooboo_CMS; Trusted_Connection=Yes;</ConnectionString>
<Name>Sample</Name>
</ConnectionSetting>
</Connections>
<CreateDatabaseSetting>Server=.\SQLExpress;Database=Kooboo_CMS; Trusted_Connection=Yes;</CreateDatabaseSetting>
<SharingDatabase>true</SharingDatabase>
<SharingDatabaseConnectionString>Server=.\SQLExpress;Database=Kooboo_CMS; Trusted_Connection=Yes;</SharingDatabaseConnectionString>
</SqlServerSettings>
 

MySQL

MySQL provider usually used on MONO/*UNIX, and some shared web hosting do not support SQLServer.

Usage:

  • Download "Content_Providers.zip".
  • Extract the zip file. Copy the files under "MySQL" include "MySQL.config" into BIN folder of Kooboo CMS..
  • Create a new database or use the existing database, we call it "Kooboo CMS".
  • Edit the "MySQL.config" to specify the connection strings.
 
<MysqlSettings xmlns="http://schemas.datacontract.org/2004/07/Kooboo.CMS.Content.Persistence.Mysql" xmlns:i="http://www.w3.org/2001/XMLSchema-instance">
<ConnectionString>Server=127.0.0.1;Database=Kooboo_CMS;Uid=root;Pwd=;charset=gbk;</ConnectionString>
<DEFAULT_CHARSET>utf8</DEFAULT_CHARSET>
</MysqlSettings>
 

MangoDB

MangoDB is a key-value database. It usually used in the site have a lot document but have few relations.

Usage:

  • Download "Content_Providers.zip".
  • Extract the zip file. Copy the files under "MySQL" include "MongoDB.config" into BIN folder of Kooboo CMS.
  • Install the Mongodb server.
  • Edit the "MongoDB.config" to specify the connection strings.
 
<DatabaseSettings xmlns="http://schemas.datacontract.org/2004/07/Kooboo.CMS.Content.Persistence.MongoDB" xmlns:i="http://www.w3.org/2001/XMLSchema-instance">
<ConnectionString>mongodb://localhost</ConnectionString>
<SharingDatabase>false</SharingDatabase>
</DatabaseSettings>
 

Site migration between different Kooboo CMS instance with different providers

Migrating the site between different Kooboo CMS instances is a really great feature. For example: We can develop the site under the XML provider instance, but want to deploy the to another production instance with SQLServer.

Usage:

  1. Exporting the site from the old instance.
  2. Download a new "Kooboo_CMS.zip".
  3. Extract the "Kooboo_CMS.zip", doing some Configurations.
  4. Setup the new web site on IIS.
  5. Start the new web site, and importing the exported site.

Kooboo中如何切换数据库(注意:如果切换数据库,需要Kooboo中没有一个website 否则会报错数据库中没有表之类的)的更多相关文章

  1. eclipse java项目中明明引入了jar包 为什么项目启动的时候不能找到jar包 项目中已经 引入了 com.branchitech.app 包 ,但时tomcat启动的时候还是报错? java.lang.ClassNotFoundException: com.branchitech.app.startup.AppStartupContextListener java.lang.ClassN

    eclipse java项目中明明引入了jar包 为什么项目启动的时候不能找到jar包 项目中已经 引入了 com.branchitech.app 包 ,但时tomcat启动的时候还是报错?java. ...

  2. 数据库迁移(创建关联等操作) Target database is not up to date报错

    使用Mysql-sqlalchemy执行数据库迁移 来更新数据库: 队长试探性的在网上找了几种方案 依然没有解决报错问题: 后来看了https://www.aliyun.com/jiaocheng/4 ...

  3. angular6项目中使用echarts图表的方法(有一个坑,引用报错)

    1.安装相关依赖(采用的webpack) npm install ecahrts --save npm install ngx-echarts --save 2.angular.json 配置echa ...

  4. Working Experience - WPF XAML 报错 - 命名空间中不存在该名称

    问题 编辑 xaml 时,VS 提示一个存在的类不存在(如:命名空间"xxx"中不存在"xxx"名称). 运行环境 Windows 版本:Window 10 V ...

  5. python3.3中使用tornado.options.parse_config_file的时候,在windows下conf为utf-8时,报错的问题

    由于我的windows7下的默认编码是gbk 在调用tornado.options.parse_config_file时,内部代码为 with open(path) as f: exec_in(f.r ...

  6. Couldn't load libPassword from loader:NDK开发中C文件编译成cpu对应的so类库时,找不到类库报错的原因之一

    LogCat输出: 03-03 12:42:32.665: E/AndroidRuntime(32432): FATAL EXCEPTION: main03-03 12:42:32.665: E/An ...

  7. number (1)eclipse 连接数据库报错 数据库信息不对导致的出错

  8. JAVA 报错exe4j中this executable was created with an evaluation 怎么办

    如果使用未破解注册的exe4j打包JAR文件为EXE,运行EXE的时候就会出现下面的提示   打开exe4j软件,Change License或者是输入序列号,然后用注册机算一个注册码即可  

  9. python 使用xlsxwriter 写入数据时,当数据中链接的后面包含空格时(如:"http://*** "),导出问题打开报错

    python 在使用 xlsxwriter组件写入数据时,当数据包含类似“http://*** /”数据时,导出的excel,打开时会提示如下错误: 没有查到相关的资料处理这个问题,可能原因为exce ...

随机推荐

  1. python top project of 2013

    Hi Pythonistas! 测试和调试 Testing & Debugging 框架及Web Frameworks & Web 并发 Concurrency 任务调度 Job Sc ...

  2. VS2005中SetUnhandledExceptionFilter函数应用

    很多软件通过设置自己的异常捕获函数,捕获未处理的异常,生成报告或者日志(例如生成mini-dump文件),达到Release版本下追踪Bug的目的.但是,到了VS2005(即VC8),Microsof ...

  3. highcharts 切换

    <!doctype html> <html lang="en"> <head> <script type="text/javas ...

  4. ajax readyState的五种状态详解

    通过ajax的readyState的值,我们可以知道当前的这个http请求处于什么状态.对于web的调试是比较重要的. readyState 状态说明: (0)未初始化 此阶段确认XMLHttpReq ...

  5. Android 去除EditText边框,添加下划线,

    首先:重写EditText //请在这里添加您的包名 import android.content.Context; import android.graphics.Canvas; import an ...

  6. socket关闭动作以及socket状态的总结

    主要部分,四次握手: 断开连接其实从我的角度看不区分客户端和服务器端,任何一方都可以调用close(or closesocket)之类的函数开始主动终止一个连接.这里先暂时说正常情况.当调用close ...

  7. 不要在头文件中使用 using namespace std;

    不要在头文件中使用(using namespace std;).   若你使用了using namespace std;,在某一头文件中,那么包含这些头文件的文件就失去了"namespace ...

  8. FireBug 调试JS入门

    http://www.blogjava.net/vincent/archive/2009/04/14/265591.html   http://baike.baidu.com/link?url=0S2 ...

  9. JavaScript DOM高级程序设计 2.4-try{}catch{}--我要坚持到底!

    先看一段有异常的语句 var sound = 'Roar!'; function myOrneryBeast() { this.style.color='green';//window没有style属 ...

  10. 获取View的高度宽度,屏幕参数,状态栏高度

    基础 各区域示例,注意绿色,紫色,橙色区域 注意: 在onCreate只是对象的初始创建过程,这时并没有draw,这时view.getHeight返回0,可在onStart里用getHeight等. ...