编辑“︁
Testserver with shared database
”︁
跳转到导航
跳转到搜索
警告:
您没有登录。如果您进行任何编辑,您的IP地址会公开展示。如果您
登录
或
创建账号
,您的编辑会以您的用户名署名,此外还有其他益处。
反垃圾检查。
不要
加入这个!
{{Navigation for Marauroa Top|Using}} {{Navigation for Marauroa Users}} This article describes how to configure a test server so that players can use their normal accounts and characters for testing. == The easy ways == There are two easy way: ; Just setup a new empty database : Players can create new accounts there, and some script may give them enough XP and items for testing. There are two problems with this approach: Players may just go to the test server to play with a strong character. And people may play there for a couple of days and get used to it for normal playing ; Just copy the production database into a second database every night : This has the obvious advantage that players can test with their own characters so the test are way more realistic. The problem with this approach is that it destroys the logs every night. An attacker may try to crack passwords on the test database without anyone noticing. == The complex way == The complex way allows players to test with their own account and characters, while doing smart things with the logs. The login events will be logged to the original database so that the number of wrong password tries sums up both databases. The Stendhal website displays a login history covering all sources: website, main server and test server. The gameEvents and itemlog tables will be kept for the analysis of bugs. === Configure marauroa on test server === Configure the test server just like a normal server with its own database. Then you need to disable account and character creations. It is essential that those are only created on the main server in order to ensure a consistent database. And you may want to add a big hint, telling players that this is a test server: allow_account_creation=false allow_character_creation=false server_welcome=Please note: The test database will be reset every day and all PROGRESS WILL BE LOST. === Setup test database === Please start the test server once, so that it will create all the tables, do not login. We are going to replace some tables with VIEWs pointing to the main database: <source lang="sql"> DROP TABLE account; DROP TABLE accountban; DROP TABLE banlist; DROP TABLE characters; DROP TABLE loginEvent; CREATE VIEW account AS SELECT * FROM marauroa.account; CREATE VIEW accountban AS SELECT * FROM marauroa.accountban; CREATE VIEW banlist AS SELECT * FROM marauroa.banlist; CREATE VIEW characters AS SELECT * FROM marauroa.characters; CREATE VIEW loginEvent AS SELECT * FROM marauroa.loginEvent; </source> === Nightly update script === This update script will copy the rpobject table from the main server. rpobject is the table the progress of characters is stored in: <source lang="bash"> nice mysql -u testserver --password=xxx testserver < refresh-database.sql mysqldump -f -u testserver --password=xxx stendhal rpobject | mysql -u testserver --password=xxx testserver </source> refresh-database.sql: <source lang="sql"> TRUNCATE rpzone; TRUNCATE rpobject; </source> [[Category:Marauroa]] {{#breadcrumbs: [[Marauroa]] | [[Navigation for Marauroa Users|Using]] | [[Testserver with shared database|Testserver]]}}
摘要:
请注意,所有对gamedev的贡献均可能会被其他贡献者编辑、修改或删除。如果您不希望您的文字作品被随意编辑,请不要在此提交。
您同时也向我们承诺,您提交的内容为您自己所创作,或是复制自公共领域或类似自由来源(详情请见
Gamedev:著作权
)。
未经许可,请勿提交受著作权保护的作品!
取消
编辑帮助
(在新窗口中打开)
该页面使用的模板:
Template:Br
(
编辑
)
Template:Navigation Menu Marauroa General
(
编辑
)
Template:Navigation Menu Marauroa Internals
(
编辑
)
Template:Navigation Menu Marauroa Users
(
编辑
)
Template:Navigation for Marauroa Top
(
编辑
)
Template:Navigation for Marauroa Users
(
编辑
)
导航菜单
个人工具
未登录
讨论
贡献
创建账号
登录
命名空间
页面
讨论
不转换
不转换
简体
繁體
大陆简体
香港繁體
澳門繁體
大马简体
新加坡简体
臺灣正體
查看
阅读
编辑
查看历史
更多
搜索
导航
首页
最近更改
随机页面
MediaWiki帮助
工具
链入页面
相关更改
特殊页面
页面信息