Sign in to follow this  
Followers 0
Warrior

Royally F$%+ed things up...

3 posts in this topic

Ok so after making a complete balls up of my database update using the new exile.sql file i decided to just start a fresh... i was getting all sorts of errors and was failing to find the answers i needed so i went total emo and deleted mysql workbench only to my frustration see that my server was still there, along with its bloody errors... so i deleted the server and created a new one, great i thought, a fresh start.

Now i am getting an issue where when i attempt to start the server  it automatically just crashes on start up, this is the log:

[01:51:27:839504 +01:00] [Thread 4520] extDB2: Input from Server: 9:VERSION
[01:51:27:839504 +01:00] [Thread 4520] extDB2: Output to Server: 69
[01:51:27:839504 +01:00] [Thread 4520] extDB2: Input from Server: 9:ADD_DATABASE:exile
[01:51:27:839504 +01:00] [Thread 4520] extDB2: Database Type: MySQL
[01:51:27:840504 +01:00] [Thread 4520] extDB2: Database Exception Error: Connection attempt failed: Unknown database 'exile'
[01:51:27:840504 +01:00] [Thread 4520] extDB2: Output to Server: [0,"Database Exception Error"]
[01:51:27:840504 +01:00] [Thread 4520] extDB2: Input from Server: 9:SHUTDOWN
[01:51:27:840504 +01:00] [Thread 4520] extDB2: Sending Shutdown to Armaserver

As far as im aware the database is set up as should be and it is definately the right name... LOL im at my wits end :D

Share this post


Link to post
Share on other sites

Also when i execute im looking at the output now and its spamming a ton of lines all saying Error Code: 1022. Can't write; duplicate key in table '#sql-6f8_3f' :/

 

Share this post


Link to post
Share on other sites
On 12/11/2015 at 9:12 PM, Warrior said:

[01:51:27:839504 +01:00] [Thread 4520] extDB2: Input from Server: 9:VERSION [01:51:27:839504 +01:00] [Thread 4520] extDB2: Output to Server: 69 [01:51:27:839504 +01:00] [Thread 4520] extDB2: Input from Server: 9:ADD_DATABASE:exile [01:51:27:839504 +01:00] [Thread 4520] extDB2: Database Type: MySQL [01:51:27:840504 +01:00] [Thread 4520] extDB2: Database Exception Error: Connection attempt failed: Unknown database 'exile' [01:51:27:840504 +01:00] [Thread 4520] extDB2: Output to Server: [0,"Database Exception Error"] [01:51:27:840504 +01:00] [Thread 4520] extDB2: Input from Server: 9:SHUTDOWN [01:51:27:840504 +01:00] [Thread 4520] extDB2: Sending Shutdown to Armaserver

That's your problem. Try going to through the following steps to confirm your setup is correct:

  • See if you actually have a database setup for exile
    • Do this by going on your MySQL / MariaDB server, and do the following:
    • MariaDB [mysql]> SHOW DATABASES;  
      +--------------------+
      | Database           |
      +--------------------+
      | exiledb            |
      | information_schema |
      | mysql              |
      | performance_schema |
      +--------------------+
      4 rows in set (0.00 sec)

       

  • Next, you'll want to find out what users you have on the system, and look for the same username you specify in your MySQL connection configuration: 
  • MariaDB [mysql]> SELECT user, host FROM mysql.user;  
    +------------------+-----------------+
    | user             | host            |
    +------------------+-----------------+
    | root             | 127.0.0.1       |
    | exileuser        | xxx.xxx.xxx.xxx |
    | root             | ::1             |
    | root             | serverhostname  |
    | admin            | localhost       |
    | debian-sys-maint | localhost       |
    | root             | localhost       |
    +------------------+-----------------+
    7 rows in set (0.01 sec)

     

  • Next you want to verify you actually have grants to that database that houses your Exile data:
  • MariaDB [mysql]> SHOW GRANTS FOR 'exileuser'@'xxx.xxx.xxx.xxx';  
    +--------------------------------------------------------------------------------------------------------------------------+
    | Grants for exileuser@xxx.xxx.xxx.xxx                                                                                |
    +--------------------------------------------------------------------------------------------------------------------------+
    | GRANT USAGE ON *.* TO 'exileuser'@'xxx.xxx.xxx.xxx' IDENTIFIED BY PASSWORD '*xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx' |
    | GRANT ALL PRIVILEGES ON `exiledb`.* TO 'exileuser'@'xxx.xxx.xxx.xxx'                                                     |
    +--------------------------------------------------------------------------------------------------------------------------+
    2 rows in set (0.00 sec)

     

In this case, xxx.xxx.xxx.xxx is the IP of your game server, and "exileuser" is a stand-in for the user of the database, and "exiledb" is a stand-in for the database name itself in the above examples. Alternatively, you may see 'exileuser'@'%'. The % character just means any IP address can attempt a login as that user, with the right credentials.

Normally MySQL will throw an error about not being able to access a database when one exists, but the correct privileges are not in place -- so I believe the database is either A) Missing, or B) The permissions of the user trying to access the database are so low, they do not even have usage permissions to list databases at all.

 

Share this post


Link to post
Share on other sites
Advertisement

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!


Register a new account

Sign in

Already have an account? Sign in here.


Sign In Now
Sign in to follow this  
Followers 0

  • Recently Browsing   0 members

    No registered users viewing this page.