From: Benjamin Lees [mailto:[email protected]] 
Sent: Thursday, August 05, 2010 2:16 PM
To: MediaWiki announcements and site admin list
Subject: Re: [Mediawiki-l] installation issue with 1.16.0 - mysql user privilege

>Right.  Users created through the installer pre-1.16 only had
>DELETE,INSERT,SELECT,UPDATE,CREATE TEMPORARY TABLES for the database.
>This meant that if an update involved the creation of new tables, the
>update would fail.  If you're able to upgrade from 1.15 to 1.16
>without any problems, you either already ran into this and granted the
>rest of the privileges to the user, or else you originally created the
>database/user before running the install script (or I'm
>misunderstanding what you're doing).

I installed the (pre-1.16.0) wikis using a "superuser" account, but it does not 
have all the privileges of the mysql root account.  I installed wikis over many 
years just fine using that account, until I tried to install a 1.16.0 wiki, 
when I ran into this issue.  Databases were not created in advance.  When I 
update from 1.15.1 to 1.16.0 I have no errors and I use the same superuser 
account used to install the wiki.  I have checked my logs, which I keep when I 
run update.php and refreshlinks.php, and no errors are seen.  I also see many 
tables being created, like "user_properties" table and "log_search" table, so 
its not an issue of the superuser account creating tables.  

>I assume you're putting your existing user in the "Superuser name"
field (I'm pretty sure users.sql is only used if you've checked the
"Use superuser account" box).

Right, checking superuser and using my mysql account, which has almost all 
privileges as root.

>Users can only grant permissions they
have; if your existing user doesn't have all rights on the new
database, it won't be able to grant them to the new user it's
creating.

Yes, I think this is the problem, that my superuser is missing a privilege or 
two.  Since the error is trying to add "ALL" privilege to the database_user, 
you would pretty much have to use the mysql root account to do the 
installation, which is likely the way most if not all installers do it.  I have 
a security conscious mysql admin so the superuser account I have does not have 
ALL privilege.

But it seems strange that the 1.16.0 installation wants to give ALL privilege 
to the database_user it creates when it does not need ALL privilege, as proved 
by my ability to run update.php to upgrade from 1.15.1 to 1.16.0.  I'm guessing 
they are planning for the future since it is not necessary now.

-Jim

_______________________________________________
MediaWiki-l mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-l

Reply via email to