Announcement

Collapse
No announcement yet.

registerserver returns an error

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • registerserver returns an error

    I am trying to install open-xchange based on the instructions for RHEL-5.

    I get to the line where I am instructed to run 'registerserver'

    Code:
    /opt/open-xchange/sbin/registerserver -n localhost -A oxadminmaster -P xxxxxxx
    when I run that I get the error:

    Code:
    server could not be registered: 
    Server response:
     Error unmarshaling return; nested exception is: 
            java.lang.ClassNotFoundException: com.mysql.jdbc.exceptions.jdbc4.MySQLIntegrityConstraintViolationException (no security manager: RMI class loader disabled)
    Any ideas?

    The system already had a database setup so created configdb and then ran the sql file referenced in the 'oxinstaller' script to set that up. Thats the only place I deviated from the install instructions.

    Thanks.

  • #2
    Hi,

    could you please try again, following the guide this time? The Initconfigdb script creates only
    one database ("configdb") but does not touch any other of your databases. If your database
    server does not allow root access without passwords you should create the openexchange
    database user. I'll update the RHEL guide to make it more clear, thanks for your input!

    Greetings

    //edit: guide updated
    Last edited by Martin Heiland; 07-12-2008, 12:42 PM.

    Comment


    • #3
      I had created the openexchange user for the system and database. It seemed like it didn't even try to use that account as I got the "login failed with no password for root" error.

      Is that java error at all related to that other script? And might I just disable the part of the script that tries to create the database?

      Thanks,

      -- Nick

      Comment


      • #4
        Hi Nick,

        the error message at this point is strange - could it be possible that there are multiple mysql jdbc libraries laying around on the system? Maybe from previous installations or other software packages...

        Greetings

        Comment


        • #5
          Originally posted by ndsharp View Post
          I am trying to install open-xchange based on the instructions for RHEL-5.

          I get to the line where I am instructed to run 'registerserver'

          Code:
          /opt/open-xchange/sbin/registerserver -n localhost -A oxadminmaster -P xxxxxxx
          when I run that I get the error:

          Code:
          server could not be registered: 
          Server response:
           Error unmarshaling return; nested exception is: 
                  java.lang.ClassNotFoundException: com.mysql.jdbc.exceptions.jdbc4.MySQLIntegrityConstraintViolationException (no security manager: RMI class loader disabled)
          Any ideas?
          What errors do you get in /var/log/open-xchange/open-xchange-admin.log.0?

          Comment


          • #6
            This error appears more than once. There is also an authentication failed error somewhere in there. But only the one time. If you want the whole thing I can provide it, but it already more than 1200 lines.

            Also, where does the script get the password to use for the openexchange user? Does it use the one provided on the command line or does it look to some config file?

            Code:
            Jul 11, 2008 11:27:11 PM com.openexchange.admin.storage.mysqlStorage.OXUtilMySQLStorage registerServer
            SEVERE: SQL Error
            com.mysql.jdbc.exceptions.jdbc4.MySQLIntegrityConstraintViolationException: Duplicate entry '2' for key 1
            	at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
            	at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
            	at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
            	at java.lang.reflect.Constructor.newInstance(Constructor.java:513)
            	at com.mysql.jdbc.Util.handleNewInstance(Util.java:406)
            	at com.mysql.jdbc.Util.getInstance(Util.java:381)
            	at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1015)
            	at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:956)
            	at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3491)
            	at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3423)
            	at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:1936)
            	at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:2060)
            	at com.mysql.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java:2542)
            	at com.mysql.jdbc.PreparedStatement.executeInternal(PreparedStatement.java:1734)
            	at com.mysql.jdbc.PreparedStatement.execute(PreparedStatement.java:995)
            	at com.openexchange.groupware.impl.IDGenerator$NoDBFunctionGetId.getInternal(IDGenerator.java:411)
            	at com.openexchange.groupware.impl.IDGenerator$NoDBFunctionGetId.getId(IDGenerator.java:395)
            	at com.openexchange.groupware.impl.IDGenerator.getId(IDGenerator.java:188)
            	at com.openexchange.admin.storage.mysqlStorage.OXUtilMySQLStorage.registerServer(OXUtilMySQLStorage.java:863)
            	at com.openexchange.admin.rmi.impl.OXUtil.registerServer(OXUtil.java:393)
            	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
            	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
            	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
            	at java.lang.reflect.Method.invoke(Method.java:597)
            	at sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:305)
            	at sun.rmi.transport.Transport$1.run(Transport.java:159)
            	at java.security.AccessController.doPrivileged(Native Method)
            	at sun.rmi.transport.Transport.serviceCall(Transport.java:155)
            	at sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:535)
            	at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(TCPTransport.java:790)
            	at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:649)
            	at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:885)
            	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:907)
            	at java.lang.Thread.run(Thread.java:619)

            Comment


            • #7
              Hi,

              the workflow is like this:

              1. A database user "openexchange" is created with a password, for example "secret"

              2. This password is used at the "initconfigdb" script at the --configdb-pass parameter
              -> Creates a database "configdb" using "openexchange" and "secret" as credentials

              3. The "oxinstaller" script does all the configuration stuff for Open-Xchange, again you'll set the --configdb-pass ("secret") and a new password for the administrative masteruser of Open-Xchange ("--master-pass")
              -> Creates all config files and adds the password to the config files at the correct place

              Now the database is initialized, configs are set and services can be started. Configdb is the one place where all other information about Open-Xchange Servers is stored, for example when operating in a cluster. This is also the place where every service (Groupware or Admindaemon) does a lookup when being started.
              Last edited by Martin Heiland; 07-14-2008, 05:24 PM.

              Comment


              • #8
                I went back and tried the "initconfigdb" script again and got it to work by removing the -a option. I was then able to run the other scripts without a problem until I got to "createcontext." With that I am getting an error:

                Code:
                /opt/open-xchange/sbin/createcontext -A oxadminmaster -P XXXXXX -c 1 -u oxadmin -d "Context Admin" -g Admin -s User -p XXXXXX -e oxadmin@test.MYDOMAIN.com -q 1024 -L defaultcontext --access-combination-name=all
                
                context 1 could not be created: 
                Server response:
                 java.sql.BatchUpdateException: Access denied for user 'openexchange'@'%' to database 'configdb_19'
                I am not sure what is up with that. At first I thought I had run the "registerdatabase" script wrong but after trying a few permutations of that the result is the same.

                This is what I tried last with that script (after running unresisterdatabase)
                Code:
                /opt/open-xchange/sbin/registerdatabase -A oxadminmaster -P XXXX -n configdb -p XXXX -m true
                Thanks a bunch so far.

                --Nick

                Comment

                Working...
                X