Homepage | Products | OX Knowledge Base | Support | Try Now | Contact | Company
OX Logo
Results 1 to 8 of 8
  1. #1
    mamue Guest

    Default createcontext fails; "Could not create connection to database server"

    Hi
    i try to install OX on OpenSUSE 11.1 with MySQL on a different (virtual) host. I used the tutorial at http://www.open-xchange.com/wiki/ind...ion_openSUSE11. All steps succeeded, but the createcontext fails with
    Code:
    context 1 could not be created:
    Server response:
     Error unmarshaling return; nested exception is:
            java.lang.ClassNotFoundException: com.mysql.jdbc.exceptions.jdbc4.MySQLNonTransientConnectionException (no security manager: RMI class loader disabled)
    The main cause seems to be the exception in the /var/log/open-xchange/open-xchange-admin.log.0:
    Code:
    SEVERE: com.mysql.jdbc.exceptions.jdbc4.MySQLNonTransientConnectionException: 
    Could not create connection to database server. 
    Attempted reconnect 3 times. Giving up.
    com.openexchange.admin.rmi.exceptions.StorageException:
    com.mysql.jdbc.exceptions.jdbc4.MySQLNonTransientConnectionException: 
    Could not create connection to database server. Attempted reconnect 3 times. Giving up.
    The parameters in both configdb.property files are the same:
    Code:
    readUrl=jdbc:mysql://arealhostname.de:3306/openexchange
    readProperty.1=user=openexchange
    readProperty.2=password=not24get
    writeUrl=jdbc:mysql://arealhostname.de:3306/openexchange
    writeProperty.1=user=openexchange
    writeProperty.2=password=not24get
    I can connect to the database:
    mysql -u openexchange -h arealhostname.de -p openexchange < "not24get"
    Code:
    show tables;
    +------------------------+
    | Tables_in_openexchange |
    +------------------------+
    | configdb_sequence      |
    | context                |
    | context_server2db_pool |
    | db_cluster             |
    | db_pool                |
    | filestore              |
    | login2context          |
    | reason_text            |
    | server                 |
    +------------------------+
    I don't know what i could do to find the error. Can anybody help me?

    Thanks a lot
    mamue

  2. #2
    Join Date
    Feb 2007
    Location
    Germany
    Posts
    3,695

    Default

    Hi,

    there are several postings in this forums about the issue. The most usual cause is that the database server is not accessible remotely.

    "Could not create connection to database server. Attempted reconnect 3 times. Giving up."

    This looks like connection problems, can you analyze the network traffic?

    Greetings

  3. #3
    mamue Guest

    Default

    Quote Originally Posted by Martin Braun View Post
    Hi,

    there are several postings in this forums about the issue. The most usual cause is that the database server is not accessible remotely.

    "Could not create connection to database server. Attempted reconnect 3 times. Giving up."

    This looks like connection problems, can you analyze the network traffic?

    Greetings
    Yes, i read that posts. But I think i can exclude that the database is not accesible, as i tested that with the mysql client. As i said:
    mysql -u openexchange -h arealhostname.de -p openexchange < "not24get"
    That works from the remote host. I think that network problems are unlikely, because there is no real switch and no real cabeling. All hosts are virtual machines on the same iron. Besides the MySQL DB is already used by a third VM which serves a CMS. There have never been any problems. The setup-process runs with no problems, all tables are created without errors. Wouldn't it be more likely that i misconfiguered something?

    Thanks
    mamue

  4. #4
    mamue Guest

    Default

    Is it possible to enable a debugging mode, so that i could see which credentials are used for the database connection?

    Thanks
    mamue

  5. #5
    Join Date
    Feb 2007
    Location
    Germany
    Posts
    3,695

    Default

    Hi,

    we don't log any passwords. You might sniff the network traffic (port 3306) for this.

    Greetings

  6. #6
    mamue Guest

    Default

    I tried my best sniffing the network.
    I try to get the credentials:
    Code:
    tshark -Tfields -e mysql.user -e mysql.passwd -i eth0 -R mysql.user
    That shows me the correct user, with a hashed password. Then i try to capture the queries:
    Code:
    tshark -Tfields -e mysql.query -i eth0 -R 'mysql.query'
    
    SELECT cid FROM context WHERE cid = 1;
    SELECT id FROM filestore WHERE uri LIKE '%'
    SELECT uri,size,max_context FROM filestore WHERE id=3
    SELECT cid FROM context WHERE filestore_id=3
    SELECT db_pool_id,url,driver,login,password,name,weight,max_units FROM db_pool, db_cluster WHERE db_cluster.write_db_pool_id = db_pool_id
    SELECT COUNT(server_id) FROM context_server2db_pool WHERE write_db_pool_id=4
    SELECT read_db_pool_id FROM db_cluster WHERE write_db_pool_id = 4
    SET autocommit=0
    SELECT db_schema,COUNT(db_schema) AS count FROM context_server2db_pool WHERE write_db_pool_id=4 GROUP BY db_schema HAVING count<1000 ORDER BY count
    UPDATE configdb_sequence SET id=id+1
    SELECT id FROM configdb_sequence
    rollback
    SET autocommit=1
    I can connect to the remote MySQL instance with the username tshark shows me and the password i configured. Using the mysql client, i can execute the statements shown above - no errors.
    What else can i do to track down the error?

    Thanks
    mamue

  7. #7
    pm_ Guest

    Angry I had what appeared to be the same problem, and fixed it.

    I had what appeared to be the same problem, and fixed it. To fix, I manually made sure the password was the same in 4 places, after finding a certain query in the tcpdump output (which is the 5th one in your output):

    # tcpdump -v -i lo port 3306 -Xs 0

    ...

    .........SELECT.
    db_pool_id,url,d
    river,login,pass
    word,name,weight
    ,max_units.FROM.
    db_pool,.db_clus
    ter.WHERE.db_clu
    ster.write_db_po
    ol_id.=.db_pool_
    id

    So silly that it was logging in as openexchange twice; once to read the password (which it already knew and was using), and again to do who knows what with the wrong password.

    Fix:
    mysql> update configdb.db_pool set password = 'asdfasdf';
    mysql> update mysql.user set password = password('asdfasdf') where user = 'openexchange';
    (then restart mysql, since I set it using UPDATE instead of the proper way)

    $ vim /opt/open-xchange/etc/admindaemon/configdb.properties
    $ vim /opt/open-xchange/etc/groupware/configdb.properties

    possible cause:
    The previous commands I was typing (found here: http://oxpedia.org/wiki/index.php?ti..._openSUSE_11.0) somehow resulted in the correct 'openexchange' password everywhere except configdb.db_pool, which instead had my mysql root password, not the openexchange one. That is the table found in that SQL above.

  8. #8
    Chriss Guest

    Default

    Had the same Problem, thanks for your info.

    I solved it via phpmyadmin, just changed the PW in DB "configdb"/db_pool.

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •