Page tree
Skip to end of metadata
Go to start of metadata

中文标题【设置 MySQL 数据库】


本页面提供了有关在 Confluence 设置MySQL 数据库的相关指南。

设置准备

  • 请查看 Supported Platforms 页面来获得 Confluence 系统支持的 MySQL 数据库版本。你需要在安装 Confluence 之前升级你的 MySQL 数据库。
  • 如果你从其他的数据库中迁移到使用 MySQL 数据库,包括你从嵌入的内置评估数据库迁移到 MySQL ,在进行安装之前,请阅读 Migrating to Another Database 中的内容。

Confluence 不能在 MySQL 变种版本,例如,MariaDB (CONFSERVER-29060) 和 Percona (CONFSERVER-36471)上工作。



1. 安装 MySQL 服务器

如果你还没有安装你的 MySQL 数据库,请先下载然后进行安装。请参考 MySQL documentation 页面中的内容来进行一步一步的安装。

2. 配置 MySQL 服务器

在这一步,你将要配置你的 MySQL 数据库服务器。

注意: 如果你尝试连接你的 Confluence 到一个已经存在的 MySQL 数据库服务器。我们强烈建议你按照下面描述的安装步骤在 MySQL 中运行配置步骤:

配置 MySQL 服务器:

  1. 运行 MySQL 安装指南:
    1. 如果你连接 Confluence 到一个已经存在的 MySQL 服务器,请选择 重新配置实例(Reconfigure Instance)
    2. 选择 高级配置(Advanced Configuration)
    3. 选择符合你硬件要求的合适的 MySQL 服务器类型(type of MySQL Server)。这个配置影响 MySQL 服务器使用的内存,磁盘和 CPU 资源大小。请参考  MySQL documentation 来获得更多的信息。
    4. 选择 仅事务数据库(Transactional Database Only),你需要为你的数据库选择使用 InnoDB 为默认的存储引擎。
      你必须为你的 Confluence 选择 InnoDB 存储引擎。使用 MyISAM 存储引擎将让 Confluence 不能正常工作。
    5. 设置  InnoDB  表空间(InnoDB Tablespace)的设置(默认的设置是可以接受的)。
    6. 设置大致的 当前的连接数量(number of concurrent connections)来符合你 Confluence 使用的需求。你可以使用选择默认提供的选项,你也可以手动输入你希望的 MySQL 接受的连接数。请参考  MySQL documentation 来获得更多的信息。
    7. 针对 网络选项(networking options),确定 启用 TCP/IP 网络(Enable TCP/IP Networking)启用 Strict 模式(Enable Strict Mode),的选项被选择(默认被选择的)。请参考  networkingserver SQL modes 文档来获得更多的信息。
    8. 针对 MySQL 服务器的 默认字符集设置(default character set),请选择 Best Support For Multilingualism (换句话说使用 UTF-8 字符集)。这个选择能够让 Confluence 支持所有的语言。请参考 Configuring Database Character Encoding 中的内容来获得更多的信息。
    9. 针对 Windows 的配置选择。你可以选择将 MySQL 安装成服务也可以不选择。如果你的硬件服务只被设置为用于 MySQL 服务器,你可能希望将 MySQL 安装成服务(Install As Windows Service),这个意思是能够自动启动 MySQL 以服务的方式。请参考  MySQL documentation 来获得更多的信息。
      说明: 如果你选择不将 MySQL 安装成 Windows 的服务,你需要确定你的 MySQL 服务在你的 Confluence 连接到服务器上的时候已经启动了。
    10. 选择 修改安全设置(Modify Security Settings)来设置你 MySQL 服务器(root)账号的访问密码。
  2. 编辑你 MySQL 服务器上的 my.cnf 文件(在 Window 操作系统中是 my.ini)。在这个文件中 [mysqld] 部分,对下面的一些参数进行修改:
    (请参考  MySQL Option Files 来获得对 my.cnfmy.ini 修改的更多配置信息)
    找到  [mysqld]部分,对下面的参数进行一些修改:
    • 设置服务器使用 UTF-8 字符集:

      [mysqld]
      ...
      character-set-server=utf8
      collation-server=utf8_bin
      ...
      
    • 设置默认的存储引擎是 InnoDB:

      [mysqld]
      ...
      default-storage-engine=INNODB
      ...
      
    • 指定 max_allowed_packet 变量设置为 256M:

      [mysqld]
      ...
      max_allowed_packet=256M
      ...
      
    • 指定innodb_log_file_size 变量设置为至少 2GB:

      [mysqld]
      ...
      innodb_log_file_size=2GB
      ...
    • 确定 sql_mode 参数不被指定为 NO_AUTO_VALUE_ON_ZERO

      // remove this if it exists
      sql_mode = NO_AUTO_VALUE_ON_ZERO
    • 确定全局事务的隔离级别被设置为 READ-COMMITTED.

      [mysqld]
      ...
      transaction-isolation=READ-COMMITTED
      ...
    • 检查 2 进制日志格式被配置使用为 'row-based' 为日志:

      [mysqld]
      ...
      binlog_format=row
      ...
  3. 重启你的 MySQL 数据库服务器,确定你的设置已经生效了:
    • 在 Windows 中,选择 Window 服务器管理来启动服务。
    • 在 Linux :
      • 运行下面的命令,基于你的设置:'/etc/init.d/mysqld stop' or '/etc/init.d/mysql stop' 或 'service mysqld stop'。
      • 重新运行上面的命令,将命令中的 'stop' 替换为 'start'。
    • 在 Mac OS X,运行 'sudo /Library/StartupItems/MySQLCOM/MySQLCOM restart'。

3. 创建数据库和数据库用户

一旦你成功的安装和配置了 MySQL 数据库服务器,你需要为你的 Confluence 创建数据库和数据库用户:

  1. 在 MySQL 中以超级用户运行 'mysql' 。默认的用户为 'root' 同时密码为空。
  2. 创建一个空的 Confluence 数据库实例(例如 confluence):

    CREATE DATABASE <database-name> CHARACTER SET utf8 COLLATE utf8_bin;
  3. 创建一个 Confluence 数据库用户(例如 confluenceuser):

    GRANT ALL PRIVILEGES ON <database-name>.* TO '<confluenceuser>'@'localhost' IDENTIFIED BY '<password>';

    如果 Confluence 没有和你的 MySQL 数据库运行在同一个服务器上,你需要替换 localhost 为你的 Confluence 服务器访问你 MySQL 数据库的 Confluence 服务器主机名或者 IP 地址。

4. 安装 Confluence

请参考 Confluence Installation and Upgrade Guide 文档来参考 Confluence 如何一步一步的在你的系统上进行安装。

5. 下载和安装 MySQL 驱动

基于许可证的现在,我们没有将 MySQL 的数据库捆绑到 Confluence 中。需要将你的数据库驱动在 Confluence 中可用:

  1. 停止 Confluence。
  2. 访问 Database JDBC Drivers 页面然后下载正确的驱动。驱动文件被比较标记为类似 mysql-connector-java-5.1.xx-bin.jar
  3. 将 .jar 文件放置到你的  <installation-directory>/confluence/WEB-INF/lib 目录中。
  4. 重启 Confluence,然后在浏览器中访问 http://localhost:<port> 然后继续 Confluence 的安装进程。

6. 输入你的数据库细节

Confluence 的安装向导将会指导你一步一步的在 Confluence 中配置安装 MySQL 数据库。

使用 JDBC 连接(默认)

JDBC 是推荐的连接你的 Confluence 到数据库中的方式。

Confluence 的安装向导将会提供给你下面 2 种连接选项:

  • 简单 —— 这个是最简单的方式来连接你的 Confluence 到数据库中。
  • 通过连接字符串 —— 使用这个选项,你需要配置特定的参数同时你还需要具有数据库连接方面的一些只是来构建正确的连接 URL。

基于你设置的类型,你需要提供下面的一些参数。

设置类型字段描述
简单(Simple)主机名(Hostname)你数据库服务器使用的主机名或者 IP 地址。
简单(Simple) 端口( Port)这个是 MySQL 端口。如果你在安装 MySQL 的时候没有修改的话,默认端口是  3306
简单(Simple)数据库名(Database name)这是你 Confluence 数据库的名称,按照上面的例子,名称为 confluence
通过连接字符串(By connection string)数据库 URL(Database URL)

数据库  URL 使用的下面的格式:
jdbc:mysql://<hostname>:<port>/<database>

例如:
jdbc:mysql://localhost:3306/confluence

同时需要(Both)用户名(Username)你连接数据库需要使用的用户名,在上面的示例中,用户名是  confluenceuser
同时需要(Both)用户密码(Password)你连接数据库需要使用的用户名密码。

使用 JNDI 数据源

如果你希望使用 JDNI数据源,请参考 Configuring a datasource connection 中的内容来进行配置。你需要在启动 Confluence 之前进行配置,在设置向导中,Confluence 只使用在你 Tomcat 配置中提供的选项。

7. 测试你的数据库连接

在你的数据库设置界面,有一个 测试连接(Test connection)按钮可以检查:

  • Confluence 可以连接你的数据库服务器
  • 数据库字符集,隔离级别和存储引擎是正确的
  • 你的数据库用户有正确的数据库权限

一旦上面的测试成功了,单击 下一步(Next )来继续进行 Confluence 的安装进程。

问题解决

  • 如果 Confluence 提示没有 class 文件,你可能将你的 JDBC 驱动放置到了错误的文件夹。

  • 如果你收到了下面的错误信息,请确认 confluenceuser 用户已经具有了所有需求的数据库权限,当你使用  localhost 进行连接的时候。
  • Could not successfully test your database: : Server connection failure during transaction. Due to underlying exception: 'java.sql.SQLException: Access denied for user 'confluenceuser'@'localhost' (using password: YES)'
  • 下面的连接包含了一些你在使用 MySQL 数据库连接的时候可能会遇到的常见问题,请参考:Known issues for MySQL


  • No labels