OrientDB Studio看起来是一个很有前途的工具,可以探索该产品作为db4o的对象存储替代品,但遗憾的是我无法使用它来获得第一个基础。
我正在运行OSX 10.6.8。使用1.7.10 Mac和1.7.9“所有平台”二进制文件观察到下面描述的行为:
1)我无法使用Studio创建数据库。我编辑了root密码并重新启动了服务器,但是任何使用Studio创建新数据库的尝试都会产生相同的结果:401 Unauthorized。
日志中的信息不多:
2014-11-20 12:12:32:420 CONF Remote client connected from: OClientConnection [id=1, source=?, since=1416503552420] [OClientConnectionManager] 2014-11-20 12:12:32:431 FINE [ONetworkProtocolHttpAbstract.execute] Requested: POST /database/invoices/local/document [ONetworkProtocolHttpDb] 2014-11-20 12:12:32:438 FINE Disconnecting connection with id=1 [OClientConnectionManager] 2014-11-20 12:12:32:438 FINE Disconnected connection with id=1, no other active channels found [OClientConnectionManager] 2014-11-20 12:12:32:438 FINE Connection shutdowned [ONetworkProtocolHttpDb]
我不得不求助于使用控制台创建新数据库。不得不求助于使用控制台使学习曲线变得陡峭并成为采用的障碍。
2)我想使用Studio创建索引并探索索引行为,但我似乎无法打开任何数据库,甚至是作为编写者或管理员的演示GratefulDeadConcerts。
Studio显示页面右上角的模式(阅读器),我不得不相信我没有写权限,因为我无法在新对象数据库上创建任何索引。
任何帮助都会感激不尽(双关语)。
答案 0 :(得分:0)
问题显然不是OrientDB或Studio。
1)我继续使用OSX 1.7.10进行测试。以admin / admin身份登录,我注意到Safari将以(admin)方式打开数据库,但Firefox会将数据库打开为(阅读器)。升级到Firefox 33.1.1后,模式现在显示为(admin)和我现在可以使用Studio创建数据库。
我刚刚删除了Safari 5.1.10中的localhost cookie,并且能够使用该浏览器创建数据库。更改root密码并重新启动服务器后,可能需要执行该步骤。
2)我的索引创建问题是由于缺乏对索引工作方式的理解。索引只能在具有模式定义属性的对象上创建。
在打开数据库并使用API请求生成模式之后,Studio显示了类属性,并且我能够在Studio中的这些属性上创建索引。
db2 = new OObjectDatabaseTx("remote:localhost/invoices").open("admin", "admin"); // Tell OrientDB to automatically generate schema during class registration, this saves us some code. db2.setAutomaticSchemaGeneration(true); // Now register our classes... db.getEntityManager().registerEntityClasses("your.entity.package.goes.here"); // Save the schema of our new database... db2.getMetadata().getSchema().save();