Symphony 为什么不会自动建表

本贴最后更新于 2003 天前,其中的信息可能已经时移世异

在 STS 中部署的 symphony,
报错:找不到 user 表。

[ERROR]-[2018-11-06 09:34:07]-[org.b3log.latke.repository.jdbc.JdbcRepository:490]: Query failed
java.sql.SQLSyntaxErrorException: Table 'b3log_symphony.symphony_user' doesn't exist
	at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:120)
	at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:97)
	at com.mysql.cj.jdbc.exceptions.SQLExceptionsMapping.translateException(SQLExceptionsMapping.java:122)
	at com.mysql.cj.jdbc.ClientPreparedStatement.executeInternal(ClientPreparedStatement.java:975)
	at com.mysql.cj.jdbc.ClientPreparedStatement.executeQuery(ClientPreparedStatement.java:1025)
	at com.zaxxer.hikari.pool.ProxyPreparedStatement.executeQuery(ProxyPreparedStatement.java:52)
	at com.zaxxer.hikari.pool.HikariProxyPreparedStatement.executeQuery(HikariProxyPreparedStatement.java)
	at org.b3log.latke.repository.jdbc.util.JdbcUtil.queryJson(JdbcUtil.java:159)
	at org.b3log.latke.repository.jdbc.util.JdbcUtil.queryJsonArray(JdbcUtil.java:130)
	at org.b3log.latke.repository.jdbc.JdbcRepository.get(JdbcRepository.java:486)
	at org.b3log.latke.repository.AbstractRepository.get(AbstractRepository.java:159)
	at org.b3log.latke.repository.Repository.getList(Repository.java:133)
	at org.b3log.symphony.repository.UserRepository.getAdmins(UserRepository.java:149)
	at org.b3log.symphony.repository.UserRepository_$$_jvst451_28._d10getAdmins(UserRepository_$$_jvst451_28.java)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
	at java.lang.reflect.Method.invoke(Unknown Source)
	at org.b3log.latke.ioc.JavassistMethodHandler.invoke(JavassistMethodHandler.java:126)
	at org.b3log.symphony.repository.UserRepository_$$_jvst451_28.getAdmins(UserRepository_$$_jvst451_28.java)
	at org.b3log.symphony.service.UserQueryService.getAdmins(UserQueryService.java:397)
	at org.b3log.symphony.service.UserQueryService_$$_jvst451_2b._d3getAdmins(UserQueryService_$$_jvst451_2b.java)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
	at java.lang.reflect.Method.invoke(Unknown Source)
	at org.b3log.latke.ioc.JavassistMethodHandler.invoke(JavassistMethodHandler.java:126)
	at org.b3log.symphony.service.UserQueryService_$$_jvst451_2b.getAdmins(UserQueryService_$$_jvst451_2b.java)
	at org.b3log.symphony.service.InitMgmtService.initSym(InitMgmtService.java:222)
	at org.b3log.symphony.service.InitMgmtService_$$_jvst451_40._d5initSym(InitMgmtService_$$_jvst451_40.java)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
	at java.lang.reflect.Method.invoke(Unknown Source)
	at org.b3log.latke.ioc.JavassistMethodHandler.invoke(JavassistMethodHandler.java:126)
	at org.b3log.symphony.service.InitMgmtService_$$_jvst451_40.initSym(InitMgmtService_$$_jvst451_40.java)
	at org.b3log.symphony.SymphonyServletListener.contextInitialized(SymphonyServletListener.java:89)
	at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4643)
	at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5109)
	at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183)
	at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1429)
	at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1419)
	at java.util.concurrent.FutureTask.run(Unknown Source)
	at org.apache.tomcat.util.threads.InlineExecutorService.execute(InlineExecutorService.java:75)
	at java.util.concurrent.AbstractExecutorService.submit(Unknown Source)
	at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:944)
	at org.apache.catalina.core.StandardHost.startInternal(StandardHost.java:839)
	at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183)
	at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1429)
	at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1419)
	at java.util.concurrent.FutureTask.run(Unknown Source)
	at org.apache.tomcat.util.threads.InlineExecutorService.execute(InlineExecutorService.java:75)
	at java.util.concurrent.AbstractExecutorService.submit(Unknown Source)
	at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:944)
	at org.apache.catalina.core.StandardEngine.startInternal(StandardEngine.java:261)
	at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183)
	at org.apache.catalina.core.StandardService.startInternal(StandardService.java:422)
	at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183)
	at org.apache.catalina.core.StandardServer.startInternal(StandardServer.java:770)
	at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183)
	at org.apache.catalina.startup.Catalina.start(Catalina.java:682)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
	at java.lang.reflect.Method.invoke(Unknown Source)
	at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:350)
	at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:492)
[ERROR]-[2018-11-06 09:34:07]-[org.b3log.symphony.service.UserQueryService:399]: Gets admins failed
org.b3log.latke.repository.RepositoryException: java.sql.SQLSyntaxErrorException: Table 'b3log_symphony.symphony_user' doesn't exist
	at org.b3log.latke.repository.jdbc.JdbcRepository.get(JdbcRepository.java:492)
	at org.b3log.latke.repository.AbstractRepository.get(AbstractRepository.java:159)
	at org.b3log.latke.repository.Repository.getList(Repository.java:133)
	at org.b3log.symphony.repository.UserRepository.getAdmins(UserRepository.java:149)
	at org.b3log.symphony.repository.UserRepository_$$_jvst451_28._d10getAdmins(UserRepository_$$_jvst451_28.java)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
	at java.lang.reflect.Method.invoke(Unknown Source)
	at org.b3log.latke.ioc.JavassistMethodHandler.invoke(JavassistMethodHandler.java:126)
	at org.b3log.symphony.repository.UserRepository_$$_jvst451_28.getAdmins(UserRepository_$$_jvst451_28.java)
	at org.b3log.symphony.service.UserQueryService.getAdmins(UserQueryService.java:397)
	at org.b3log.symphony.service.UserQueryService_$$_jvst451_2b._d3getAdmins(UserQueryService_$$_jvst451_2b.java)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
	at java.lang.reflect.Method.invoke(Unknown Source)
	at org.b3log.latke.ioc.JavassistMethodHandler.invoke(JavassistMethodHandler.java:126)
	at org.b3log.symphony.service.UserQueryService_$$_jvst451_2b.getAdmins(UserQueryService_$$_jvst451_2b.java)
	at org.b3log.symphony.service.InitMgmtService.initSym(InitMgmtService.java:222)
	at org.b3log.symphony.service.InitMgmtService_$$_jvst451_40._d5initSym(InitMgmtService_$$_jvst451_40.java)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
	at java.lang.reflect.Method.invoke(Unknown Source)
	at org.b3log.latke.ioc.JavassistMethodHandler.invoke(JavassistMethodHandler.java:126)
	at org.b3log.symphony.service.InitMgmtService_$$_jvst451_40.initSym(InitMgmtService_$$_jvst451_40.java)
	at org.b3log.symphony.SymphonyServletListener.contextInitialized(SymphonyServletListener.java:89)
	at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4643)
	at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5109)
	at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183)
	at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1429)
	at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1419)
	at java.util.concurrent.FutureTask.run(Unknown Source)
	at org.apache.tomcat.util.threads.InlineExecutorService.execute(InlineExecutorService.java:75)
	at java.util.concurrent.AbstractExecutorService.submit(Unknown Source)
	at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:944)
	at org.apache.catalina.core.StandardHost.startInternal(StandardHost.java:839)
	at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183)
	at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1429)
	at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1419)
	at java.util.concurrent.FutureTask.run(Unknown Source)
	at org.apache.tomcat.util.threads.InlineExecutorService.execute(InlineExecutorService.java:75)
	at java.util.concurrent.AbstractExecutorService.submit(Unknown Source)
	at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:944)
	at org.apache.catalina.core.StandardEngine.startInternal(StandardEngine.java:261)
	at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183)
	at org.apache.catalina.core.StandardService.startInternal(StandardService.java:422)
	at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183)
	at org.apache.catalina.core.StandardServer.startInternal(StandardServer.java:770)
	at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183)
	at org.apache.catalina.startup.Catalina.start(Catalina.java:682)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
	at java.lang.reflect.Method.invoke(Unknown Source)
	at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:350)
	at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:492)
Caused by: java.sql.SQLSyntaxErrorException: Table 'b3log_symphony.symphony_user' doesn't exist
	at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:120)
	at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:97)
	at com.mysql.cj.jdbc.exceptions.SQLExceptionsMapping.translateException(SQLExceptionsMapping.java:122)
	at com.mysql.cj.jdbc.ClientPreparedStatement.executeInternal(ClientPreparedStatement.java:975)
	at com.mysql.cj.jdbc.ClientPreparedStatement.executeQuery(ClientPreparedStatement.java:1025)
	at com.zaxxer.hikari.pool.ProxyPreparedStatement.executeQuery(ProxyPreparedStatement.java:52)
	at com.zaxxer.hikari.pool.HikariProxyPreparedStatement.executeQuery(HikariProxyPreparedStatement.java)
	at org.b3log.latke.repository.jdbc.util.JdbcUtil.queryJson(JdbcUtil.java:159)
	at org.b3log.latke.repository.jdbc.util.JdbcUtil.queryJsonArray(JdbcUtil.java:130)
	at org.b3log.latke.repository.jdbc.JdbcRepository.get(JdbcRepository.java:486)
	... 57 more
  • Sym

    Sym 是一款用 Java 实现的现代化社区(论坛/BBS/社交网络/博客)系统平台。

    下一代的社区系统,为未来而构建

    523 引用 • 4581 回帖 • 694 关注
  • Q&A

    提问之前请先看《提问的智慧》,好的问题比好的答案更有价值。

    6585 引用 • 29558 回帖 • 250 关注
被采纳的回答
  • 88250 1

    代码确实有 bug,已经修复,重新拉一下 master 谢谢!

欢迎来到这里!

我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。

注册 关于
请输入回帖内容 ...
  • 88250

    正常情况下会在第一次启动的时候自动建表,你观察一下启动日志。

    1 回复
  • lzxawcy
    作者

    启动日志没有建表的信息

    [INFO ]-[2018-11-06 10:12:01]-[org.b3log.symphony.SymphonyServletListener:80]: Sym process [pid=2804]
    [WARN ]-[2018-11-06 10:12:01]-[org.b3log.latke.Latkes:635]: !!!!Runtime mode is [DEVELOPMENT], please make sure configured it with [PRODUCTION] in latke.properties if deployed on production environment!!!!
    [INFO ]-[2018-11-06 10:12:01]-[org.b3log.symphony.processor.FileUploadProcessor:87]: Uses dir [C:\Users\xiang\AppData\Roaming\STS\sts-3.9.5.RELEASE\.\upload] for file uploading
    [INFO ]-[2018-11-06 10:12:01]-[org.b3log.latke.repository.jdbc.util.Connections:129]: Initialized database connection pool [hikari]
    [INFO ]-[2018-11-06 10:12:01]-[com.zaxxer.hikari.HikariDataSource:110]: HikariPool-1 - Starting...
    [INFO ]-[2018-11-06 10:12:02]-[com.zaxxer.hikari.HikariDataSource:123]: HikariPool-1 - Start completed.
    [ERROR]-[2018-11-06 10:12:02]-[org.b3log.latke.repository.jdbc.JdbcRepository:490]: Query failed
    

    从这里开始就是上述的报错了

    1 回复
  • 88250

    把数据库里面的表删了重新启动再看看。

    2 回复
  • lzxawcy
    作者

    b3log_symphony 数据库中一直没有创建任何表,mysql 是 5.7 版本,我其他项目使用数据库没有问题。

  • lzxawcy
    作者

    打成 war 包在放到 webapps 中启动的日志出现警告:

    06-Nov-2018 10:35:33.642 信息 [main] org.apache.catalina.startup.HostConfig.deployDescriptor Deploying deployment descriptor [C:\mysoftware\apache-tomcat-9.0.12\conf\Catalina\localhost\symphony.xml]
    06-Nov-2018 10:35:33.661 警告 [main] org.apache.catalina.startup.HostConfig.deployDescriptor The path attribute with value [/symphony] in deployment descriptor [C:\mysoftware\apache-tomcat-9.0.12\conf\Catalina\localhost\symphony.xml] has been ignored
    06-Nov-2018 10:35:33.679 警告 [main] org.apache.catalina.startup.HostConfig.deployDescriptor A docBase [C:\mysoftware\apache-tomcat-9.0.12\webapps\Symphony] inside the host appBase has been specified, and will be ignored
    06-Nov-2018 10:35:33.685 警告 [main] org.apache.catalina.startup.SetContextPropertiesRule.begin [SetContextPropertiesRule]{Context} Setting property 'source' to 'org.eclipse.jst.jee.server:Symphony' did not find a matching property.
    06-Nov-2018 10:35:37.058 信息 [main] org.apache.jasper.servlet.TldScanner.scanJars At least one JAR was scanned for TLDs yet contained no TLDs. Enable debug logging for this logger for a complete list of JARs that were scanned but no TLDs were found in them. Skipping unneeded JARs during scanning can improve startup time and JSP compilation time.
    

    下面的报错和之前的一样是找不到表。

  • 88250 1

    代码确实有 bug,已经修复,重新拉一下 master 谢谢!

    1 回复
  • lzxawcy
    作者

    谢谢,更新后就可以用了

  • tanglong

    ERROR]-[2019-02-12 14:52:27]-[org.b3log.latke.repository.jdbc.util.Connections:132]: Can not initialize database connection pool
    java.lang.ClassNotFoundException: com.mysql.cj.jdbc.Driver
    已经对 local.properties 里面的数据库用户名和密码进行了配置,也开启了 sql 数据库,并建好了数据库 b3blog_symphony,但是还是报了上面的错误信息

    1 回复
  • 88250

    看上去是打包有问题,MySQL 驱动 jar 没有找到。

    1 回复
  • tanglong

    是的,可是打包一般不是自动的嘛,也没有太特殊的操作把

    1 回复
  • 88250

    没有特殊操作,你可能需要仔细看下打包过程输出的日志,看看是不是遗漏了什么提示信息。

    1 回复
  • tanglong

    好的,谢谢

请输入回帖内容 ...

推荐标签 标签

  • Hadoop

    Hadoop 是由 Apache 基金会所开发的一个分布式系统基础架构。用户可以在不了解分布式底层细节的情况下,开发分布式程序。充分利用集群的威力进行高速运算和存储。

    82 引用 • 122 回帖 • 620 关注
  • 程序员

    程序员是从事程序开发、程序维护的专业人员。

    534 引用 • 3528 回帖
  • Google

    Google(Google Inc.,NASDAQ:GOOG)是一家美国上市公司(公有股份公司),于 1998 年 9 月 7 日以私有股份公司的形式创立,设计并管理一个互联网搜索引擎。Google 公司的总部称作“Googleplex”,它位于加利福尼亚山景城。Google 目前被公认为是全球规模最大的搜索引擎,它提供了简单易用的免费服务。不作恶(Don't be evil)是谷歌公司的一项非正式的公司口号。

    49 引用 • 192 回帖
  • JavaScript

    JavaScript 一种动态类型、弱类型、基于原型的直译式脚本语言,内置支持类型。它的解释器被称为 JavaScript 引擎,为浏览器的一部分,广泛用于客户端的脚本语言,最早是在 HTML 网页上使用,用来给 HTML 网页增加动态功能。

    710 引用 • 1173 回帖 • 163 关注
  • Q&A

    提问之前请先看《提问的智慧》,好的问题比好的答案更有价值。

    6585 引用 • 29558 回帖 • 250 关注
  • IDEA

    IDEA 全称 IntelliJ IDEA,是一款 Java 语言开发的集成环境,在业界被公认为最好的 Java 开发工具之一。IDEA 是 JetBrains 公司的产品,这家公司总部位于捷克共和国的首都布拉格,开发人员以严谨著称的东欧程序员为主。

    180 引用 • 400 回帖
  • Laravel

    Laravel 是一套简洁、优雅的 PHP Web 开发框架。它采用 MVC 设计,是一款崇尚开发效率的全栈框架。

    19 引用 • 23 回帖 • 689 关注
  • Sym

    Sym 是一款用 Java 实现的现代化社区(论坛/BBS/社交网络/博客)系统平台。

    下一代的社区系统,为未来而构建

    523 引用 • 4581 回帖 • 694 关注
  • 新人

    让我们欢迎这对新人。哦,不好意思说错了,让我们欢迎这位新人!
    新手上路,请谨慎驾驶!

    51 引用 • 226 回帖
  • 招聘

    哪里都缺人,哪里都不缺人。

    189 引用 • 1056 回帖 • 2 关注
  • C

    C 语言是一门通用计算机编程语言,应用广泛。C 语言的设计目标是提供一种能以简易的方式编译、处理低级存储器、产生少量的机器码以及不需要任何运行环境支持便能运行的编程语言。

    83 引用 • 165 回帖 • 40 关注
  • Solidity

    Solidity 是一种智能合约高级语言,运行在 [以太坊] 虚拟机(EVM)之上。它的语法接近于 JavaScript,是一种面向对象的语言。

    3 引用 • 18 回帖 • 349 关注
  • TensorFlow

    TensorFlow 是一个采用数据流图(data flow graphs),用于数值计算的开源软件库。节点(Nodes)在图中表示数学操作,图中的线(edges)则表示在节点间相互联系的多维数据数组,即张量(tensor)。

    20 引用 • 19 回帖 • 1 关注
  • HBase

    HBase 是一个分布式的、面向列的开源数据库,该技术来源于 Fay Chang 所撰写的 Google 论文 “Bigtable:一个结构化数据的分布式存储系统”。就像 Bigtable 利用了 Google 文件系统所提供的分布式数据存储一样,HBase 在 Hadoop 之上提供了类似于 Bigtable 的能力。

    17 引用 • 6 回帖 • 43 关注
  • Ruby

    Ruby 是一种开源的面向对象程序设计的服务器端脚本语言,在 20 世纪 90 年代中期由日本的松本行弘(まつもとゆきひろ/Yukihiro Matsumoto)设计并开发。在 Ruby 社区,松本也被称为马茨(Matz)。

    7 引用 • 31 回帖 • 177 关注
  • GitLab

    GitLab 是利用 Ruby 一个开源的版本管理系统,实现一个自托管的 Git 项目仓库,可通过 Web 界面操作公开或私有项目。

    46 引用 • 72 回帖
  • OAuth

    OAuth 协议为用户资源的授权提供了一个安全的、开放而又简易的标准。与以往的授权方式不同之处是 oAuth 的授权不会使第三方触及到用户的帐号信息(如用户名与密码),即第三方无需使用用户的用户名与密码就可以申请获得该用户资源的授权,因此 oAuth 是安全的。oAuth 是 Open Authorization 的简写。

    36 引用 • 103 回帖 • 8 关注
  • wolai

    我来 wolai:不仅仅是未来的云端笔记!

    1 引用 • 11 回帖
  • etcd

    etcd 是一个分布式、高可用的 key-value 数据存储,专门用于在分布式系统中保存关键数据。

    5 引用 • 26 回帖 • 495 关注
  • 安装

    你若安好,便是晴天。

    128 引用 • 1184 回帖
  • SVN

    SVN 是 Subversion 的简称,是一个开放源代码的版本控制系统,相较于 RCS、CVS,它采用了分支管理系统,它的设计目标就是取代 CVS。

    29 引用 • 98 回帖 • 693 关注
  • React

    React 是 Facebook 开源的一个用于构建 UI 的 JavaScript 库。

    192 引用 • 291 回帖 • 440 关注
  • Kubernetes

    Kubernetes 是 Google 开源的一个容器编排引擎,它支持自动化部署、大规模可伸缩、应用容器化管理。

    108 引用 • 54 回帖
  • Kafka

    Kafka 是一种高吞吐量的分布式发布订阅消息系统,它可以处理消费者规模的网站中的所有动作流数据。 这种动作(网页浏览,搜索和其他用户的行动)是现代系统中许多功能的基础。 这些数据通常是由于吞吐量的要求而通过处理日志和日志聚合来解决。

    35 引用 • 35 回帖
  • OpenStack

    OpenStack 是一个云操作系统,通过数据中心可控制大型的计算、存储、网络等资源池。所有的管理通过前端界面管理员就可以完成,同样也可以通过 Web 接口让最终用户部署资源。

    10 引用 • 8 关注
  • CentOS

    CentOS(Community Enterprise Operating System)是 Linux 发行版之一,它是来自于 Red Hat Enterprise Linux 依照开放源代码规定释出的源代码所编译而成。由于出自同样的源代码,因此有些要求高度稳定的服务器以 CentOS 替代商业版的 Red Hat Enterprise Linux 使用。两者的不同在于 CentOS 并不包含封闭源代码软件。

    238 引用 • 224 回帖 • 2 关注
  • 单点登录

    单点登录(Single Sign On)是目前比较流行的企业业务整合的解决方案之一。SSO 的定义是在多个应用系统中,用户只需要登录一次就可以访问所有相互信任的应用系统。

    9 引用 • 25 回帖 • 1 关注