Bugzilla installation fails to create a database
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
bugzilla (Ubuntu) |
Fix Released
|
Undecided
|
Martin Pitt |
Bug Description
Trying to install bugzilla on Dapper results with these errors:
Setting up bugzilla (2.20-1) ...
Creating a new default bugzilla database...
DBD::mysql::db do failed: Access denied for user 'debian-
DBD::mysql::db do failed: Access denied for user 'debian-
dpkg: error processing bugzilla (--configure):
subprocess post-installation script returned error exit status 2
I don't know why this happens, since from the bugzilla changelog, I find this:
bugzilla (2.16.7-1) unstable; urgency=low
* Major rewriting of the postinst.
Better process, for the automatic mode, we now create a default bugzilla
user instead of using debian-sys-maint.
Changelog suggests that this user (debian-sys-maint) isn't needed anymore. This error was stumbled upon by choosing the Automatic installation routine in debconf.
Will have to check the code, next...
Changed in bugzilla: | |
status: | Incomplete → Fix Released |
Here's how I see it happening, someone who understands this better can correct my reasoning:
in file:
/usr/share/ bugzilla/ debian/ postinst- db.pl
it says:
... debian. cnf';
# according to installation way user choosed,
# we'll do different things.
my $install_way;
my $default_file = '/etc/mysql/
...
and
... default. cnf
# The Automatic way will read /etc/mysql/
# and will use the values found there.
if ($install_way eq 'Automatic') {
# At this time, Debian MySQL user must be available.
init_default_ vars();
debug "Debian MySQL maintainer is : $DEBIAN_DBUSER";
# At this time, we have to set the good values
$mysql_ name_escaped = $mysql_name;
$mysql_ user_pwd = $BUGZILLA_DBPASS;
$mysql_ need_root = 'true';
$mysql_ root_name = $DEBIAN_DBUSER;
$mysql_ root_pwd = $DEBIAN_DBPASS;
# for accessing the MySQL database.
$mysql_host = $BUGZILLA_DBHOST;
$mysql_port = $BUGZILLA_DBPORT;
$mysql_name = $BUGZILLA_DBNAME;
$mysql_user = $BUGZILLA_DBUSER;
...
which to me seems to indicate choosing user 'debian-sys-maint' as the $mysql_root_name, contrary to the changelog entry (which is a bit short, I must admit).
After granting all privileges to user 'debian-sys-maint' and trying "sudo aptitude reinstall bugzilla" the installation procedure says:
jaska@jjod600n:~$ sudo aptitude reinstall bugzilla
Reading package lists... Done
Building dependency tree... Done
Reading extended state information
Initializing package states... Done
Reading task descriptions... Done
Building tag database... Done
The following packages will be REINSTALLED:
bugzilla
0 packages upgraded, 0 newly installed, 1 reinstalled, 0 to remove and 0 not upgraded.
Need to get 0B of archives. After unpacking 0B will be used.
Writing extended state information... Done
Setting up bugzilla (2.20-1) ...
Database bugzilla already exists, skipping database creation.
...at which point it stays probably until the end of time. Some 15 minutes later I got this pop-up box in the bottom right corner of my desktop saying "partition / is 95% full", which caused me to panic and hit ctrl+c in the terminal that was reinstalling bugzilla, because that partition had 7.9GB of free space before reinstalling. I was afraid the / partition would fill up, which wouldn't be nice...
After reading more stuff in the 'net I cannot be sure whether this was a desired effect. It sounds a bit stunning that it would eat up that much disk space, but I'll let that one pass, and study more about the package.