Bug #18502 mysql_install_db problen
Submitted: 24 Mar 2006 23:42 Modified: 27 Mar 2006 16:33
Reporter: [ name withheld ] Email Updates:
Status: Not a Bug Impact on me:
None 
Category:MySQL Server Severity:S2 (Serious)
Version:4.1.18 OS:Linux (Gentoo)
Assigned to: CPU Architecture:Any

[24 Mar 2006 23:42] [ name withheld ]
Description:
Has collided with a strange problem. I try to put from source codes (not from portage) mysql (different versions - 4.1.18, 5.0.18). All I do under the instruction. But at initialization of base (mysql_install_db - user=mysql) I receive: 
Installing all prepared tables
060325 0:08:41 [ERROR] Fatal error: Can't change to run as user 'mysql' ; Please check that the user exists!
060325 0:08:41 [ERROR] Aborting
060325 0:08:41 [Note] /usr/local/mysql/libexec/mysqld: Shutdown complete
Certainly, that the user mysql in system is.

How to repeat:
see INSTALL-SOURCE

./configure --prefix=/usr/local/mysql \
--without-debug \
--with-charset=cp1251 \
--with-mysqld-user=mysql \
--with-collation=cp1251_ukrainian_ci \
--enable-assembler \
--with-mysqld-ldflags=-all-static \
--with-extra-charsets=complex \
--enable-thread-safe-client \
--enable-local-infile \
--with-named-z-libs=not-used --disable-shared
[25 Mar 2006 8:54] Hartmut Holzgraefe
are you starting as root? only root can change the effectve user id of a process ...
if not starting as root you need to start as the configured user (mysql in this case) right away
[25 Mar 2006 10:30] [ name withheld ]
Of course I start as root...
[26 Mar 2006 15:03] [ name withheld ]
The following solution was obtained: 

su mysql -c ./bin/mysql_install_db 
su mysql -c  ./bin/mysqld_safe  &
[27 Mar 2006 16:33] Valeriy Kravchuk
So, it is not a bug. Option --user=mysql should also help in this case.