When installing 5.2 from debian packages, debian-sys-maint user is misconfigured
Bug #674413 reported by
Walter Heck
This bug affects 1 person
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
MariaDB |
Fix Released
|
Critical
|
Kristian Nielsen | ||
OurDelta |
Invalid
|
Undecided
|
Unassigned |
Bug Description
When installing mariadb 5.2 from downloaded .deb packages on debian lenny, there's a few problems i run into. I'm not sure which causes what, but here's a small list. Terminal output is attached.
* There's a message about debian-sys-maint access denied.
* There's a message that Innodb is disabled, yet it shows up in a show engines statement.
* the default config file contains options that generate warnings on server start
* The server won't properly shutdown.
To post a comment you must log in.
1. The debian-sys-maint account should be created during install, it is used internally by the postinst scripts. My guess is that something went wrong with this in the many failed install attempts. It is a huge problem that we do not have apt-get'able package repositories at the moment, packages need to be installed in a specific order, which is _very_ hard to get right manually.
You may have to create that user manually (or remove --purge + reinstall in right order should also work, if you haven't yet put data in).
2. When the postinst script installs the initial database, it runs mysqld with special options that disable InnoDB (to reduce risk of failing to install due to problems with innodb options), this is nothing to worry about (agree it is a bit confusing to see these in the logs, and also the warnings about --log-xxx options).
3. The failure to shutdown is a consequence of the problem with the debian-sys-maint account.
Looking at the log about the problem with debian-sys-maint ... It says 'using password: NO'. This suggests something wrong with the file cat /etc/mysql/ debian. cnf. Can you show the contents of this file, with any password replaced by XXX ? It should look something like this:
[client] mysqld/ mysqld. sock mysqld/ mysqld. sock
host = localhost
user = debian-sys-maint
password = XXX
socket = /var/run/
[mysql_upgrade]
user = debian-sys-maint
password = XXX
socket = /var/run/
basedir = /usr
If this looks ok, you can check that `mysqladmin --defaults- file=/etc/ mysql/debian. cnf ping` works; if not then maybe the account inside mariadb is wrong/missing (but the Using password: NO suggests a problem with debian.cnf)
Once we understand better what the problem is, we can try see if the install procedure can be made more robust to not lose the debian-sys-maint account in case of install failure
(It is also possible that an existing /etc/mysql/ debian. cnf file with wrong content could have caused this; seeing the content of the file should help determine this).