开发工具分享
  • 首页
  • 计算科学
  • 文化旅游
  • 项目和网站
    • OSSEZ 计算技术
    • USRealEstate 社区
    • 地区文化
    • CWIKI.US
    • BUG.OSSEZ.COM
    • RSS.OSSEZ.COM
Computer Science
Confluence

Confluence 6 整合到支持的附件存储选项

如果你现在正在存储附件到 WebDav 或者你的数据库中。你可以整合附件的存储到文件系统中。当你的附件从数据库中被合并到文件系统后,你存储在数据库中的附件数据就可以从数据库中删除了。 当附件合并进行的时候,所有使用 Confluence 的用户将会被禁止访问 Confluence 实例。这样配置的原因是避免在合并的时候出现数据库错误。当合并完成后,用户就可以继续使用 Confluence 了。 希望让日志在数据库合并的时候能够输出更多的内容,添加  com.atlassian.confluence.pages.persistence.dao 为 DEBUG 级别。请参考 Configuring Logging 页面中的内容。 希望对附件进行合并,请按照下面的步骤进行: 进入   > 基本配置(General Configuration) > 附件存储(Attachment storage)。 单击 编辑(Edit )来修改配置。 选择 Confluence home 目录中的本地存储(Locally in Confluence home directory)。 单击 保存(Save )来保存修改。 下面的界面将会出现,询问你确定你的修改。单击 'Migrate' 将会带你进入到修改合并进程显示的界面中。 屏幕截图:合并警告   下面的外部链接提供了有关从数据库中合并附件到本地文件系统中的一些有用的信息,这些信息可能能帮到你,请参考 - https://www.scandio.de/blog/de/2013/05/confluence-attachment-migration-the-safe-way-2.   https://www.cwiki.us/display/CONF6ZH/Attachment+Storage+Configuration

2018年06月27日 0Comments 912Browse 0Like Read more
Confluence

Confluence 6 附件存储选项

在早期的 Confluence 版本中,我们允许存储附件到 WebDav 或者 Confluence 数据库中。针对新的 Confluence 安装,我们不再支持这 2 种存储了。 本地文件系统 在默认的情况下,Confluence 存储附件到 Confluence 配置的 home 目录下的 attachments 目录中。 数据库(已弃用) 在 Confluence 5.4 及其早期的版本,我们给了系统管理员存储附件到数据库中的选项,系统管理员可以在这些版本中配置附件的存储。 存储附件到数据库中可以带来一些好处(例如,可以更加容易的进行备份,避免文件系统中出现的字符集不支持的错误),但是请注意这种存储方式将会大大加大数据库空间的使用,随着时间的推移,你的数据库可能需要更多的存储空间。 WebDav(已弃用) WebDav 在现在的存储中已经不是一个存储选项了,已经完全启用了。 这个对你使用 WebDav 访问 Confluence 的空间,页面或者附件不会产生影响,请参考页面  Configuring a WebDAV client for Confluence 中的具体配置内容。   https://www.cwiki.us/display/CONF6ZH/Attachment+Storage+Configuration

2018年06月27日 0Comments 978Browse 0Like Read more
Confluence

Confluence 6 附件存储配置

在默认的情况下 Confluence 的附件存储在 home 目录中(例如,在文件系统)。 希望对 Confluence 的附件存储进行配置: 在屏幕的右上角单击 控制台按钮 ,然后选择 General Configuration 链接。 选择 附件存储(Attachment Storage)。 https://www.cwiki.us/display/CONF6ZH/Attachment+Storage+Configuration

2018年06月27日 0Comments 994Browse 0Like Read more
Confluence

Confluence 6 "net.sf.hibernate.PropertyValueException: not-null" 相关问题解决

如果你遇到了下面的错误信息,例如: ERROR [Importing data task] [confluence.importexport.impl.ReverseDatabinder] endElement net.sf.hibernate.PropertyValueException: not-null property references a null or transient value: com.atlassian.user.impl.hibernate.DefaultHibernateUser.name 这个意思是在表中有一个不因为为 null 的地方的值为 null 了。在上面的例子中,这个在 USERS 表中的 name 列有记录为 null。有时候这个问题也会出现在 ATTACHMENTS 表中。 删除上面为 null 的记录,然后重新进行 xml 导出和导入。   https://www.cwiki.us/display/CONFLUENCEWIKI/Troubleshooting+XML+backups+that+fail+on+restore

2018年06月26日 0Comments 870Browse 0Like Read more
Confluence

Confluence 6 "Duplicate Key" 相关问题解决

如果你遇到了下面的错误信息,例如: could not insert: [bucket.user.propertyset.BucketPropertySetItem#bucket.user.propertyset.BucketPropertySetItem@a70067d3]; SQL []; Violation of PRIMARY KEY constraint 'PK_OS_PROPERTYENTRY314D4EA8'. Cannot insert duplicate key in object 'OS_PROPERTYENTRY'.; nested exception is java.sql.SQLException: Violation of PRIMARY KEY constraint 'PKOS_PROPERTYENTRY_314D4EA8'. Cannot insert duplicate key in object 'OS_PROPERTYENTRY'. 这个错误信息说的是定义为'PK_OS_PROPERTYENTRY_314D4EA8' 的主键在表 'OS_PROPERTYENTRY' 中重复了。 你可以在 'OS_PROPERTYENTRY'  表中找到 'PK_OS_PROPERTYENTRY_314D4EA8' 中定义的主键,然后找到重复的值后删除重复的值。需要确定  "PRIMARY KEY" 必须保持不重复。一个可以找到 'OS_PROPERTYENTRY' 表中是否有重复主键的 SQL 如下: SELECT ENTITY_NAME,ENTITY_ID,ENTITY_KEY,COUNT(*) FROM OS_PROPERTYENTRY GROUP BY ENTITY_NAME,ENTITY_ID,ENTITY_KEY HAVING COUNT(*)>1 https://www.cwiki.us/display/CONFLUENCEWIKI/Troubleshooting+XML+backups+that+fail+on+restore

2018年06月26日 0Comments 918Browse 0Like Read more
Confluence

Confluence 6 针对 key "cp_" 或 "cps_" 的 "Duplicate Entry" 问题解决

如果你遇到了下面的错误信息,例如: com.atlassian.confluence.importexport.ImportExportException: Unable to complete import because the data does not match the constraints in the Confluence schema. Cause: MySQLIntegrityConstraintViolationException: Duplicate entry '1475804-Edit' for key 'cps_unique_type' 上面表示在 XML 的备份文件中恢复的数据库没有正确的权限,通常是因为使用了第三方的插件的原因。这个问题在 Confluence 3.5.2 的后续版本中已经修复了,请参考 CONF-22123 中的说明。如果你的版本已经是新的版本了,你的导出文件可能需要手动进行修改来删除掉重复权限实例,或者整个记录都需要被删除。下面的 SQL 可以被用来找到这个记录。 SELECT * FROM CONTENT_PERM WHERE USERNAME IS NULL AND GROUPNAME IS NULL; SELECT cp.ID, cp.CP_TYPE, cp.USERNAME, cp.GROUPNAME, cp.CPS_ID, cp.CREATOR, cp.CREATIONDATE, cp.LASTMODIFIER, cp.LASTMODDATE FROM CONTENT_PERM cp WHERE cp.USERNAME IS NOT NULL AND cp.GROUPNAME IS NOT NULL; SELECT cps1.ID, cps1.CONTENT_ID, cps1.CONT_PERM_TYPE FROM CONTENT_PERM_SET cps1, CONTENT_PERM_SET cps2 WHERE cps1.ID <> cps2.ID AND cps1.CONTENT_ID = cps2.CONTENT_ID AND cps1.CONT_PERM_TYPE = cps2.CONT_PERM_TYPE ORDER BY cps1.CONTENT_ID, cps1.CONT_PERM_TYPE, cps1.CREATIONDATE ASC; SELECT cp.ID, cp.CP_TYPE, cps.CONTENT_ID, (SELECT scps.ID FROM CONTENT_PERM_SET scps WHERE scps.CONTENT_ID = cps.CONTENT_ID AND scps.CONT_PERM_TYPE = cp.CP_TYPE) AS suggested_cps_id FROM CONTENT_PERM cp, CONTENT_PERM_SET cps WHERE cp.CPS_ID = cps.ID AND cp.CP_TYPE <> cps.CONT_PERM_TYPE; SELECT DISTINCT cp1.ID, cp1.CP_TYPE, cp1.USERNAME, cp1.GROUPNAME, cp1.CPS_ID, cp1.CREATOR, cp1.CREATIONDATE, cp1.LASTMODIFIER, cp1.LASTMODDATE FROM CONTENT_PERM cp1, CONTENT_PERM_SET cps1, CONTENT_PERM cp2, CONTENT_PERM_SET cps2 WHERE cp1.CPS_ID = cps1.ID AND cp2.CPS_ID = cps2.ID AND cp1.ID <> cp2.ID AND cps1.CONTENT_ID = cps2.CONTENT_ID AND cp1.CP_TYPE = cp2.CP_TYPE AND cp1.USERNAME = cp2.USERNAME ORDER BY cp1.CPS_ID, cp1.CP_TYPE, cp1.USERNAME, cp1.CREATIONDATE; SELECT DISTINCT cp1.ID, cp1.CP_TYPE, cp1.USERNAME, cp1.GROUPNAME, cp1.CPS_ID, cp1.CREATOR, cp1.CREATIONDATE, cp1.LASTMODIFIER, cp1.LASTMODDATE FROM CONTENT_PERM cp1, CONTENT_PERM_SET cps1, CONTENT_PERM cp2, CONTENT_PERM_SET cps2 WHERE cp1.CPS_ID = cps1.ID AND cp2.CPS_ID = cps2.ID AND cp1.ID <> cp2.ID AND cps1.CONTENT_ID = cps2.CONTENT_ID AND cp1.CP_TYPE = cp2.CP_TYPE AND cp1.GROUPNAME = cp2.GROUPNAME ORDER BY cp1.CPS_ID, cp1.CP_TYPE, cp1.GROUPNAME, cp1.CREATIONDATE; SELECT * FROM CONTENT_PERM_SET WHERE ID NOT IN (SELECT DISTINCT CPS_ID FROM CONTENT_PERM); 删除所有找到的记录,然后尝试重新导出。   https://www.cwiki.us/display/CONFLUENCEWIKI/Troubleshooting+XML+backups+that+fail+on+restore

2018年06月26日 0Comments 1013Browse 0Like Read more
Confluence

Confluence 6 尝试从 XML 备份中恢复时解决错误

错误可能是因为数据库突然不可访问而产生。也有可能是你备份文件有问题,你需要找到你 XML 备份文件中违反数据库规定的记录修改这个记录后再创建一个新的 XML 备份: 在实例开始恢复的时候,请按照下面的指南来禁用批量更新(针对简单的问题解决),启用 SQL 日志和SQL 查询日志,通过在 Enabling Detailed SQL Logging 页面中描述的参数(with parameters)。 一旦上面 3 个修改都完成了后,重启 Confluence。 尝试另外一次恢复。 当你在恢复的时候失败了,检查你的日志文件找到不能用 XML 转换为记录的地方。针对使用 Confluence 分发包的用户,检查你 Confluence 的安装目录下的 /logs/ 目录,检查 atlassian-confluence.log 和 catalina.out 文件。正确的文件应当包含有 SQL 的调试日志输出。 滚动到文件的最下端,找到相关的错误信息,这个信息应该是与数据库有关了,例如下面的错误信息: 2006-07-13 09:32:33,372 ERROR [confluence.importexport.impl.ReverseDatabinder] endElement net.sf.hibernate.exception.ConstraintViolationException: could not insert: [com.atlassian.confluence.pages.Attachment#38] net.sf.hibernate.exception.ConstraintViolationException: could not insert: [com.atlassian.confluence.pages.Attachment#38] ... Caused by: java.sql.SQLException: ORA-01400: cannot insert NULL into ("CONFUSER"."ATTACHMENTS"."TITLE") at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:112) at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:331) at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:288) 上面的示例标记了在你附件表中 ID = 38 的记录有一个空的标题。 进入到你服务器创建的备份文件中,你应该有你数据库使用的备份。如果你没有这个的话,使用DBA 数据库管理工具创建一个数据库备份。 打开一个 DBA 数据库管理工具,然后连接到原始的数据库实例,在数据库中找到需要的表。你需要修改这个表中的一些记录。 希望找到数据库中是哪个表的那个对象,下面对应了内容存储的表: 页面,博客页面,评论(Pages, blogposts, comments) --> CONTENT 表 附件(attachments )--> ATTACHMENTS 表 希望跟着上面示例中出现的错误,进入到附件表中,找到对象的 ID 为 38 的记录。这个记录应该是一个 null 的标题。使用其他附件中使用的标题为指南,你可能还会遇到其他的问题,请根据问题进行修改。 一旦上面的修改完成了,重新创建 XML 备份。 导入备份到新的版本中。 如果导入成功了,你需要将你 SQL 修改的日志(SQL logging)重新改回来,你可以重新启用 批量更新(针对简单的问题解决),禁用 SQL 日志和SQL 查询日志。 重启 Confluence https://www.cwiki.us/display/CONFLUENCEWIKI/Troubleshooting+XML+backups+that+fail+on+restore

2018年06月26日 0Comments 991Browse 0Like Read more
Confluence

Confluence 6 XML 备份恢复失败的问题解决

XML 站点备份仅仅针对新数据库恢复的时候是必要的。 Upgrading Confluence,Setting up a test server 或者 Production Backup Strategy 最好还是通过备份 SQL 的方法来备份。 在创建和导入备份的时候出现了错误? 在创建备份的时候出现了错误 请参考 Troubleshooting failed XML site backups 页面 在导入备份的时候出现了错误 请参考下面的策略 常见问题 希望删除和导入一个小站点: 进入  > 基本配置(General Configuration) > 备份和恢复(Backup and Restore)。 选择 选择文件(Choose File)然后在本地磁盘上浏览站点导出文件。 取消选择 重构索引(Build Index)如果你希望重构你的索引为最新的存储。 选择 上传和恢复(Upload and Restore)。 从恢复目录中导入一个站点: 拷贝你的导出文件到 <confluence-home>/restore. (如果你不能确定这个目录在那里的话,你可以进入备份和恢复(Backup and Restore)界面,会告诉你目录的存储路径) 进入  > 基本配置(General Configuration) > 备份和恢复(Backup and Restore)。 在 从 Confluence Home 目录中恢复备份(Restore a backup from the Confluence Home Directory)中选择你的导出备份文件。 取消选择 重构索引(Build Index)如果你希望重构你的索引为最新的存储。 选择 恢复(Restore)。   https://www.cwiki.us/display/CONFLUENCEWIKI/Troubleshooting+XML+backups+that+fail+on+restore

2018年06月26日 0Comments 848Browse 0Like Read more
Confluence

Confluence 6 找到在创建 XML 备份的时候出现的错误

错误可能是因为数据库突然不可访问而产生。如果你在你的日志中看到了错误  'Couldn't backup database data' ,这个指南将会帮助你更正这个错误。我们强烈推荐你备份 Confluence 数据库和 Confluence 的 home 目录这种备份方式来备份你的 Confluence 服务器。你可以使用 Restoring Data from other Backups 的方法来恢复你的备份,如果需要的话。如果你对数据库 SQL 并不熟悉的话,我们建议你联系你的数据库管理员来获得相关的帮助。 完美解决方案 Production Backup Strategy 备份方案是完美并且最有效的备份方案。如果你在备份 XML 方式遇到了问题,不管是因为内存溢出还是下面描述的问题,我们建议你使用 SQL 的备份方案为你可选的备份方案。 识别并更正问题 希望找到数据库备份的错误或者中断的原因,修改状态信息的日志,能够让你获得更多的有用的信息,然后根据日志修改每一个数据库的配置: 停止 Confluence。 如果你使用的是外部数据库,请使用数据库管理工具来创建一个手动的数据库备份。 备份你的 Confluence  home 目录。你可以使用这个数据库的 SQL 备份来恢复你的整个站点。 打开 my_confluence_install/confluence/WEB-INF/classes/log4j.properties然后在文件的后面添加下面的行,并保存。 log4j.logger.com.atlassian.confluence.importexport.impl.XMLDatabinder=DEBUG, confluencelog log4j.additivity.com.atlassian.confluence.importexport.impl.XMLDatabinder=false 找到你的 atlassian-confluence.log。移动或者删除所有已经存在的 Confluence 日志,这个能够让你更加容易找到输出的错误信息。 重启 Confluence 并且登录。 开始备份,并等待错误出现。 你必须现在就要查看你的日志文件来找到是哪一个对象没有被正确转换为 XML 格式。打开 confluence-home/logs/atlassian-confluence.log,并滚动到文件的末尾。 进行查找 'ObjectNotFoundException'。你应该能够看到类似下面的错误: 01 2005-08-24 00:00:33,743 DEBUG [DOCPRIV2:confluence.importexport.impl.XMLDatabinder] Writing object: com.atlassian.confluence.core.ContentPermission with ID: 5 to XML. 02 2005-08-24 00:00:33,743 DEBUG [DOCPRIV2:confluence.importexport.impl.XMLDatabinder] Writing property: type 03 2005-08-24 00:00:33,743 DEBUG [DOCPRIV2:confluence.importexport.impl.XMLDatabinder] Writing property: group 04 2005-08-24 00:00:33,743 DEBUG [DOCPRIV2:confluence.importexport.impl.XMLDatabinder] Writing property: expiry 05 2005-08-24 00:00:33,743 DEBUG [DOCPRIV2:confluence.importexport.impl.XMLDatabinder] Writing property: content 06 [DOCPRIV2:ERROR] LazyInitializer - Exception initializing proxy <net.sf.hibernate.ObjectNotFoundException: No row with the given identifier exists: 2535, 07 of class: com.atlassian.confluence.core.ContentEntityObject>net.sf.hibernate.ObjectNotFoundException: 08 No row with the given identifier exists: 2535, of class: com.atlassian.confluence.core.ContentEntityObject 09 at net.sf.hibernate.ObjectNotFoundException.throwIfNull(ObjectNotFoundException.java:24) 10 at net.sf.hibernate.impl.SessionImpl.immediateLoad(SessionImpl.java:1946) 11 at net.sf.hibernate.proxy.LazyInitializer.initialize(LazyInitializer.java:53) 12 at net.sf.hibernate.proxy.LazyInitializer.initializeWrapExceptions(LazyInitializer.java:60) 13 at net.sf.hibernate.proxy.LazyInitializer.getImplementation(LazyInitializer.java:164) 14 at net.sf.hibernate.proxy.CGLIBLazyInitializer.intercept(CGLIBLazyInitializer.java:108) 15 at com.atlassian.confluence.core.ContentEntityObject$$EnhancerByCGLIB$$cc2f5557.hashCode(<generated>) 16 at java.util.HashMap.hash(HashMap.java:261) 17 at java.util.HashMap.containsKey(HashMap.java:339) 18 at com.atlassian.confluence.importexport.impl.XMLDatabinder.toGenericXML(XMLDatabinder.java:155) 打开一个数据库管理工具,例如 DbVisualizer 然后连接到你的数据库实例。找到的表名字,你需要修改这些表中的某些记录。 希望找到是哪个数据表出现了错误,打开 catalina.out,找到的异常的第一行。这里有错误说是在写入 ContentPermission id 为 5 的对象到 XML 的时候出现了错误。换句话说,这个意思就是在主键为 5 的行需要更正,这个在表 CONTENTLOCK 中。希望找到数据库中是哪个表的那个对象,下面对应了内容存储的表: 页面,博客页面,评论(Pages, blogposts, comments) --> CONTENT 表 附件(attachments )--> ATTACHMENTS 表 有关更多的信息可以在页面 schema documentation 中找到。 现在你必须找到不正确记录在表中的主键。在这个例子中,你可以看到在错误的第一行定义的主键为 5。 每一个属性都被写入到列中,因此最后写入的属性有不正确的值。当写入的时候出现了异常,抛出了 CONTENT (line 5) 的值 2535 (line 6)。现在你已经知道了列和值。值 2535 为一个一个不再存在的实体 ID。 使用数据库管理工具,登录 Confluence 数据库。找到相关的表然后更正实体。检查表中其他行的默认值,可能为 null ,0 或者 blank。使用默认的值来重写不正确的值。 重启 Confluence。 尝试继续进行备份。如果备份还是失败了,你也找不到合适的信息,请使用下面的连接 lodge a support request 提交给我们进行解决,请提供完整的日志信息。 "Duplicate Key" 相关的问题解决 如果你在备份的时候遇到了下面的错误: could not insert: [bucket.user.propertyset.BucketPropertySetItem#bucket.user.propertyset.BucketPropertySetItem@a70067d3]; SQL []; Violation of PRIMARY KEY constraint 'PK_OS_PROPERTYENTRY314D4EA8'. Cannot insert duplicate key in object 'OS_PROPERTYENTRY'.; nested exception is java.sql.SQLException: Violation of PRIMARY KEY constraint 'PKOS_PROPERTYENTRY_314D4EA8'. Cannot…

2018年06月25日 0Comments 1057Browse 0Like Read more
Confluence

Confluence 6 XML 备份失败的常见问题

是否是导出的时间超时导致了内存错误? 如果你的站点是一个大型站点,你可能需要临时的增加 Confluence 的可用内存。请查看 如何诊断内存错误并增加内存?.   https://www.cwiki.us/display/CONFLUENCEWIKI/Troubleshooting+failed+XML+site+backups

2018年06月25日 0Comments 929Browse 0Like Read more
1…200201202203204…237
Archives
  • June 2026
  • May 2026
  • April 2026
  • March 2026
  • February 2026
  • January 2026
  • December 2025
  • November 2025
  • October 2025
  • September 2025
  • August 2025
  • July 2025
  • June 2025
  • May 2025
  • April 2025
  • March 2025
  • February 2025
  • January 2025
  • December 2024
  • November 2024
  • October 2024
  • September 2024
  • August 2024
  • July 2024
  • June 2024
  • May 2024
  • April 2024
  • March 2024
  • February 2024
  • January 2024
  • December 2023
  • November 2023
  • October 2023
  • September 2023
  • August 2023
  • July 2023
  • June 2023
  • May 2023
  • April 2023
  • December 2022
  • November 2022
  • October 2022
  • September 2022
  • August 2022
  • May 2022
  • April 2022
  • March 2022
  • February 2022
  • January 2022
  • December 2021
  • November 2021
  • October 2021
  • September 2021
  • August 2021
  • July 2021
  • June 2021
  • May 2021
  • April 2021
  • March 2021
  • February 2021
  • January 2021
  • December 2020
  • November 2020
  • October 2020
  • September 2020
  • August 2020
  • July 2020
  • June 2020
  • May 2020
  • April 2020
  • March 2020
  • February 2020
  • January 2020
  • December 2019
  • November 2019
  • October 2019
  • September 2019
  • August 2019
  • July 2019
  • June 2019
  • May 2019
  • April 2019
  • March 2019
  • February 2019
  • January 2019
  • December 2018
  • November 2018
  • October 2018
  • September 2018
  • August 2018
  • July 2018
  • June 2018
  • May 2018
  • April 2018
  • March 2018
Categories
  • Computer Science (2,367)
    • Confluence (663)
    • Gradle (12)
  • U.S. (512)
  • 文化旅游 (146)

COPYRIGHT © 2020 CWIKIUS. ALL RIGHTS RESERVED.

THEME KRATOS MADE BY VTROIS

湘ICP备2020018253号-1