DB Problem - Access denied (solved)

Hilfe zu Znuny Problemen aller Art
Locked
rosenrot
Znuny newbie
Posts: 82
Joined: 10 Dec 2012, 14:56
Znuny Version: 3.200
Real Name: Jan Bickel

DB Problem - Access denied (solved)

Post by rosenrot »

Hallo,
mein Server ist heute abgestürzt und ich muss ein Bachup einspielen.
Wenn ich das restore script aufrufe kommt diese Ausgabe:

Code: Select all

Restore /opt/backup/2013-12-13_00-00/Config.tar.gz ...
DBI connect('database=otrs;host=localhost;','otrs',...) failed: Access denied for user 'otrs'@'localhost' (using password: YES) at /opt/otrs/Kernel/System/DB.pm line 256.
ERROR: OTRS-Restore-87 Perl: 5.16.0 OS: linux Time: Fri Dec 13 22:11:51 2013

 Message: Access denied for user 'otrs'@'localhost' (using password: YES)

 Traceback (4756): 
   Module: Kernel::System::DB::new (v1.144.2.2) Line: 227
   Module: /opt/otrs/scripts/restore.pl (v1.14) Line: 90

Restore /opt/backup/2013-12-13_00-00/Application.tar.gz ...
create MySQL
decompresses SQL-file ...
cat SQL-file into MySQL database
ERROR 1045 (28000): Access denied for user 'otrs'@'localhost' (using password: YES)
compress SQL-file...
Natürlich habe ich schon gegoogelt und im Forum gesucht wobei ich auf diesen Beitrag gestoßen bin:
viewtopic.php?f=33&t=22188&p=87633&hili ... ied#p87585

Bei mir verhält sich das ganze quasi genauso.
Mein Nutzer "otrs" kann auf die Datenbank mit den Einstellungen in der Defaults.pm zugreifen.

Hat jemand einen Tipp für mich? Ich will das System nur ungerne neu aufsetzen.

Liebe Grüße,
Jan

Edit: Ach fast hätte ich es vergessen. Ich nutze noch OTRS 3.1.12.
Last edited by rosenrot on 14 Dec 2013, 15:53, edited 2 times in total.
KlausNehrer
Znuny ninja
Posts: 1312
Joined: 25 May 2012, 08:51
Znuny Version: OTRS 4
Real Name: Klaus Nehrer

Re: DB Problem - Access denied

Post by KlausNehrer »

Du kannst Dich mit dem Benutzer otrs an der Datenbank anmelden und ein

Code: Select all

show tables;
zeigt Daten an? Dann versuche die DB manuell zu importieren.
rosenrot
Znuny newbie
Posts: 82
Joined: 10 Dec 2012, 14:56
Znuny Version: 3.200
Real Name: Jan Bickel

Re: DB Problem - Access denied

Post by rosenrot »

Danke für die Antwort Klaus,
Die Datenbank war leer.
Wenn ich "mysql -u otrs -p otrs < DatabaseBackup.sql" probiere kommt nach einiger Zeit:

Code: Select all

ERROR 2006 (HY000) at line 128: MySQL server has gone away
Danach wird das angezeigt:

Code: Select all

MariaDB [otrs]> show tables;
+--------------------+
| Tables_in_otrs     |
+--------------------+
| article            |
| article_attachment |
Heißt das, dass die DB kaputt ist oder, dass was mit meinem mysql nicht stimmt?
Last edited by rosenrot on 14 Dec 2013, 15:10, edited 1 time in total.
KlausNehrer
Znuny ninja
Posts: 1312
Joined: 25 May 2012, 08:51
Znuny Version: OTRS 4
Real Name: Klaus Nehrer

Re: DB Problem - Access denied

Post by KlausNehrer »

Das gone away klingt so nach mir ist langweilig, ich leg mich wieder hin. Deine article_attachment_ ist auch auffällig. Wie groß ist die DB? Was steht in der DB Config, insbesondere alles, was mit wait und max beginnt?
KlausNehrer
Znuny ninja
Posts: 1312
Joined: 25 May 2012, 08:51
Znuny Version: OTRS 4
Real Name: Klaus Nehrer

Re: DB Problem - Access denied

Post by KlausNehrer »

Ggf. müsstest Du erst die Attachments aus der DB ins FS exportieren und erst dann migrieren.
rosenrot
Znuny newbie
Posts: 82
Joined: 10 Dec 2012, 14:56
Znuny Version: 3.200
Real Name: Jan Bickel

Re: DB Problem - Access denied

Post by rosenrot »

Wie exportiere ich die attachments wenn ich noch nicht darauf zugreifen kann? Tut mir leid ich bin noch ein MySQL Neuling.
Liebe Grüße.
rosenrot
Znuny newbie
Posts: 82
Joined: 10 Dec 2012, 14:56
Znuny Version: 3.200
Real Name: Jan Bickel

Re: DB Problem - Access denied

Post by rosenrot »

Mit Database Config meintest du die /etc/my.cnf ? Oder gibts noch Datenbankspezifische Konfigurationsdateien?

Code: Select all

[client]
port            = 3306
socket          = /var/run/mysql/mysql.sock

# Here follows entries for some specific programs

# The MariaDB server
[mysqld]
port            = 3306
socket          = /var/run/mysql/mysql.sock
# Change following line if you want to store your database elsewhere
datadir = /var/lib/mysql
skip-external-locking
key_buffer_size = 16M
max_allowed_packet = 1M
table_open_cache = 64
sort_buffer_size = 512K
net_buffer_length = 8K
read_buffer_size = 256K
read_rnd_buffer_size = 512K
myisam_sort_buffer_size = 8M

# Point the following paths to different dedicated disks
#tmpdir         = /tmp/

# Don't listen on a TCP/IP port at all. This can be a security enhancement,
# if all processes that need to connect to mysqld run on the same host.
# All interaction with mysqld must be made via Unix sockets or named pipes.
# Note that using this option without enabling named pipes on Windows
# (via the "enable-named-pipe" option) will render mysqld useless!
# 
#skip-networking

# Replication Master Server (default)
# binary logging is required for replication
# log-bin=mysql-bin

# binary logging format - mixed recommended
# binlog_format=mixed

# required unique id between 1 and 2^32 - 1
# defaults to 1 if master-host is not set
# but will not function as a master if omitted
server-id       = 1

# The safe_mysqld script
[safe_mysqld]
log-error       = /var/log/mysql/mysqld.log
socket          = /var/run/mysql/mysql.sock

!includedir /etc/mysql

[mysqldump]
socket          = /var/run/mysql/mysql.sock
quick
max_allowed_packet = 16M

[mysql]
no-auto-rehash
# Remove the next comment character if you are not familiar with SQL
#safe-updates

[myisamchk]
key_buffer_size = 20M
sort_buffer_size = 20M
read_buffer = 2M
write_buffer = 2M

[mysqlhotcopy]
interactive-timeout

[mysqld_multi]
mysqld     = /usr/bin/mysqld_safe
mysqladmin = /usr/bin/mysqladmin
log        = /var/log/mysqld_multi.log
# user       = multi_admin
# password   = secret

# The safe_mysqld script
[safe_mysqld]
log-error       = /var/log/mysql/mysqld.log
socket          = /var/run/mysql/mysql.sock

!includedir /etc/mysql

[mysqldump]
socket          = /var/run/mysql/mysql.sock
quick
max_allowed_packet = 16M

[mysql]
no-auto-rehash
# Remove the next comment character if you are not familiar with SQL
#safe-updates

[myisamchk]
key_buffer_size = 20M
sort_buffer_size = 20M
read_buffer = 2M
write_buffer = 2M

[mysqlhotcopy]
interactive-timeout

[mysqld_multi]
mysqld     = /usr/bin/mysqld_safe
mysqladmin = /usr/bin/mysqladmin
log        = /var/log/mysqld_multi.log
# user       = multi_admin
# password   = secret
Die Datenbank ist ca 360MB groß.

Edit: Okay ich habe habe die Datenbank per Hand laden können indem ich max_allowed_package hoch gesetzt habe.
Das Hauptproblem besteht aber immer noch. Es sieht so aus, als ob otrs nicht auf die Datenbank zugreifen kann.
Beim Start von otrs kommt:

Code: Select all

Dec 14 14:15:17 h2106059 otrs[8094]: No database connect!)
Dec 14 14:15:17  otrs[8094]: -------------------------------------------------------------...----
Dec 14 14:15:17  otrs[8094]: Error: Maybe your database isn't configured yet?
Dec 14 14:15:17  otrs[8094]: -------------------------------------------------------------...----
Dec 14 14:15:17  otrs[8094]: Try the web installer to configure your database:
Dec 14 14:15:17  otrs[8094]: -->> http://h2106059.stratoserver.net/otrs/installer.pl <<--
Dec 14 14:15:17  otrs[8094]: -------------------------------------------------------------...----
Dec 14 14:15:17  otrs[8094]: or configure your database with README.database (DB - Setup Example)
Dec 14 14:15:17  otrs[8094]: -------------------------------------------------------------...----
Dec 14 14:15:17  otrs[8094]: ..failed
und beim Restoreprozess:
Message: Access denied for user 'otrs'@'localhost' (using password: YES)
In meiner Defaults.pm steht bei den DB Einstellungen:

Code: Select all

  97     # --------------------------------------------------- #
  98     # database settings                                   #
  99     # --------------------------------------------------- #
 100     # DatabaseHost
 101     # (The database host.)
 102     $Self->{DatabaseHost} = 'localhost';
 103 
 104     # Database
 105     # (The database name.)
 106     $Self->{Database} = 'otrs';
 107 
 108     # DatabaseUser
 109     # (The database user.)                                                              
 110     $Self->{DatabaseUser} = 'otrs';
 111 
 112     # DatabasePw
 113     # (The password of database user.)
 114     $Self->{DatabasePw} = 'XXX';
Anmelden mit "mysql -u otrs -p otrs" und dann c&p des pw aus der defaults geht.
Ich weiß nicht, ob das mit einspielt aber wenn ich in der Defaults.pm securemode auf 1 stelle kann ich trotzdem nicht in das Installationsmenü:
"Error Message: SecureMode active!"
Heißt das evtl, dass die Configdatei nicht richtig geladen wird?
KlausNehrer
Znuny ninja
Posts: 1312
Joined: 25 May 2012, 08:51
Znuny Version: OTRS 4
Real Name: Klaus Nehrer

Re: DB Problem - Access denied

Post by KlausNehrer »

360 MB ist nicht wirklich groß. Du könntest ja mal versuchen, die Werte max_allowed_packet = 64M anzupassen und wait_timeout = 6000 hinzuzufügen. Die DB danach neu starten, die vorhandenen Tabellen löschen und dann den restore versuchen.
KlausNehrer
Znuny ninja
Posts: 1312
Joined: 25 May 2012, 08:51
Znuny Version: OTRS 4
Real Name: Klaus Nehrer

Re: DB Problem - Access denied

Post by KlausNehrer »

Editieren ist gemein ...

Wieso änderst Du die Defaults.pm? Was steht bei Dir denn in der config.pm?
rosenrot
Znuny newbie
Posts: 82
Joined: 10 Dec 2012, 14:56
Znuny Version: 3.200
Real Name: Jan Bickel

Re: DB Problem - Access denied

Post by rosenrot »

Klaus, du bist ein Engel.
Ich hab wirklich die defaults und nicht die Config geändert... Wenn man manchmal im Wahn ist übersieht man sowas.
Es läuft wieder alles. Vielen Dank dafür!

Liebste Grüße,
Jan
Locked