Wiki source code of Repair Corrupted Internal Database
Version 9.1 by michaely on 2015/10/20 13:17
Show last authors
author | version | line-number | content |
---|---|---|---|
1 | In some cases the internal database can become corrupted and prevent use of the iSymphony application. Users will normally see errors like the following when accessing the panel: | ||
2 | |||
3 | {{info}} | ||
4 | The error may vary slightly from the example below. | ||
5 | {{/info}} | ||
6 | |||
7 | {{code}} | ||
8 | org.apache.ibatis.exceptions.PersistenceException: | ||
9 | ### Error querying database. Cause: org.h2.jdbc.JdbcSQLException: General error: "java.lang.RuntimeException: rowcount remaining=5 SYS" [50000-169] | ||
10 | ### The error may exist in com/xmlnamespace/panel/server/core/pbx/callhistory/CallHistoryMapper.xml | ||
11 | ### The error may involve com.xmlnamespace.panel.server.core.pbx.callhistory.CallHistoryMapper.getByExtension | ||
12 | ### The error occurred while executing a query | ||
13 | ### Cause: org.h2.jdbc.JdbcSQLException: General error: "java.lang.RuntimeException: rowcount remaining=5 SYS" [50000-169] | ||
14 | {{/code}} | ||
15 | |||
16 | == Repair Process == | ||
17 | |||
18 | In order to recover your data, you will need to run a repair process on the database. The repair process is outlined below: | ||
19 | |||
20 | 1. (% style="color: rgb(60,62,67);font-family: Verdana , Arial , Helvetica;font-size: small;line-height: 17.7273px;background-color: rgb(248,248,248);" %)Stop the iSymphony server. SeeĀ [[doc:ISYMDOCS.Starting And Stopping The iSymphony Server]] | ||
21 | 1. ((( | ||
22 | (% style="color: rgb(60, 62, 67); font-family: Verdana, Arial, Helvetica; font-size: small; line-height: 17.7273px; background-color: rgb(248, 248, 248); line-height: 17.7273px" %)Create a temporary directory to perform the recovery.(% style="color: rgb(60,62,67);font-family: Verdana , Arial , Helvetica;font-size: small;line-height: 17.7273px;background-color: rgb(248,248,248);" %) | ||
23 | |||
24 | |||
25 | {{code language="bash"}} | ||
26 | mkdir isdbrecovery | ||
27 | cd isdbrecovery | ||
28 | {{/code}} | ||
29 | ))) | ||
30 | 1. (% style="color: rgb(60, 62, 67); font-family: Verdana, Arial, Helvetica; font-size: small; line-height: 17.7273px; background-color: rgb(248, 248, 248); line-height: 17.7273px; font-weight: normal; line-height: 17.7273px" %)**Copy the h2 database jar into the recovery directory:**(%%)((( | ||
31 | |||
32 | |||
33 | {{code language="bash"}} | ||
34 | cp /opt/isymphony3/server/modules/framework/shared/org.h2_1.3.169.jar . | ||
35 | {{/code}} | ||
36 | ))) | ||
37 | 1. ((( | ||
38 | (% style="color: rgb(60,62,67);font-family: Verdana , Arial , Helvetica;font-size: small;line-height: 17.7273px;background-color: rgb(248,248,248);" %)Copy the database file into the recovery directory: | ||
39 | |||
40 | {{code language="bash"}} | ||
41 | cp /opt/isymphony3/server/conf/servers/default/isymphony.h2.db . | ||
42 | {{/code}} | ||
43 | |||
44 | (% style="color: rgb(60,62,67);font-family: Verdana , Arial , Helvetica;font-size: small;line-height: 17.7273px;background-color: rgb(248,248,248);" %) | ||
45 | |||
46 | ))) | ||
47 | 1. ((( | ||
48 | (% style="color: rgb(60,62,67);font-family: Verdana , Arial , Helvetica;font-size: small;line-height: 17.7273px;background-color: rgb(248,248,248);" %)Run the following command to export the database to an sql file: | ||
49 | ))) | ||
50 | |||
51 | |||
52 | |||
53 | (% style="color: rgb(60,62,67);font-family: Verdana , Arial , Helvetica;font-size: small;line-height: 17.7273px;background-color: rgb(248,248,248);" %)1) Stop the iSymphony server(%%) | ||
54 | \\(% style="color: rgb(60,62,67);font-family: Verdana , Arial , Helvetica;font-size: small;line-height: 17.7273px;background-color: rgb(248,248,248);" %)service iSymphonyServerV3 stop(%%) | ||
55 | \\(% style="color: rgb(60,62,67);font-family: Verdana , Arial , Helvetica;font-size: small;line-height: 17.7273px;background-color: rgb(248,248,248);" %)2) Create a temporary directory to perform the recovery. Make sure this directory is NOT in /opt/isymphony(%%) | ||
56 | \\(% style="color: rgb(60,62,67);font-family: Verdana , Arial , Helvetica;font-size: small;line-height: 17.7273px;background-color: rgb(248,248,248);" %)mkdir isdbrecovery(%%) | ||
57 | (% style="color: rgb(60,62,67);font-family: Verdana , Arial , Helvetica;font-size: small;line-height: 17.7273px;background-color: rgb(248,248,248);" %)cd isdbrecovery(%%) | ||
58 | \\(% style="color: rgb(60,62,67);font-family: Verdana , Arial , Helvetica;font-size: small;line-height: 17.7273px;background-color: rgb(248,248,248);" %)3) Copy the h2 database jar into the recovery directory(%%) | ||
59 | \\(% style="color: rgb(60,62,67);font-family: Verdana , Arial , Helvetica;font-size: small;line-height: 17.7273px;background-color: rgb(248,248,248);" %)cp /opt/isymphony3/server/modules/framework/shared/org.h2_1.3.169.jar .(%%) | ||
60 | \\(% style="color: rgb(60,62,67);font-family: Verdana , Arial , Helvetica;font-size: small;line-height: 17.7273px;background-color: rgb(248,248,248);" %)4) Copy the database file into the recovery directory(%%) | ||
61 | \\(% style="color: rgb(60,62,67);font-family: Verdana , Arial , Helvetica;font-size: small;line-height: 17.7273px;background-color: rgb(248,248,248);" %)cp /opt/isymphony3/server/conf/servers/default/isymphony.h2.db .(%%) | ||
62 | \\(% style="color: rgb(60,62,67);font-family: Verdana , Arial , Helvetica;font-size: small;line-height: 17.7273px;background-color: rgb(248,248,248);" %)5) Run the following command to export the database to an sql file(%%) | ||
63 | \\(% style="color: rgb(60,62,67);font-family: Verdana , Arial , Helvetica;font-size: small;line-height: 17.7273px;background-color: rgb(248,248,248);" %)java -cp org.h2_1.3.169.jar org.h2.tools.Recover(%%) | ||
64 | \\(% style="color: rgb(60,62,67);font-family: Verdana , Arial , Helvetica;font-size: small;line-height: 17.7273px;background-color: rgb(248,248,248);" %)6) Create a sub directory to hold the old database(%%) | ||
65 | \\(% style="color: rgb(60,62,67);font-family: Verdana , Arial , Helvetica;font-size: small;line-height: 17.7273px;background-color: rgb(248,248,248);" %)mkdir old(%%) | ||
66 | (% style="color: rgb(60,62,67);font-family: Verdana , Arial , Helvetica;font-size: small;line-height: 17.7273px;background-color: rgb(248,248,248);" %)mv isymphony.h2.db ./old(%%) | ||
67 | \\(% style="color: rgb(60,62,67);font-family: Verdana , Arial , Helvetica;font-size: small;line-height: 17.7273px;background-color: rgb(248,248,248);" %)7) Run the following command to create a new database from the sql file(%%) | ||
68 | \\(% style="color: rgb(60,62,67);font-family: Verdana , Arial , Helvetica;font-size: small;line-height: 17.7273px;background-color: rgb(248,248,248);" %)java -cp org.h2_1.3.169.jar org.h2.tools.RunScript -url "jdbc:h2:./isymphony" -user admin -password admin -script isymphony.h2.sql(%%) | ||
69 | \\(% style="color: rgb(60,62,67);font-family: Verdana , Arial , Helvetica;font-size: small;line-height: 17.7273px;background-color: rgb(248,248,248);" %)8) Move the new database into place(%%) | ||
70 | \\(% style="color: rgb(60,62,67);font-family: Verdana , Arial , Helvetica;font-size: small;line-height: 17.7273px;background-color: rgb(248,248,248);" %)mv isymphony.h2.db /opt/isymphony3/server/conf/servers/default/(%%) | ||
71 | \\(% style="color: rgb(60,62,67);font-family: Verdana , Arial , Helvetica;font-size: small;line-height: 17.7273px;background-color: rgb(248,248,248);" %)9) Restart iSymphony (%%) | ||
72 | \\(% style="color: rgb(60,62,67);font-family: Verdana , Arial , Helvetica;font-size: small;line-height: 17.7273px;background-color: rgb(248,248,248);" %)service iSymphonyServerV3 start | ||
73 | |||
74 | (% class="MsoNormal" style="font-size: 11.0pt;font-family: Calibri , sans-serif;color: rgb(60,62,67);line-height: 13.5pt;" %) | ||
75 |