Bug #30678 | server can't detect/find language file | ||
---|---|---|---|
Submitted: | 28 Aug 2007 20:32 | Modified: | 19 Oct 2007 9:23 |
Reporter: | Alexey Stroganov | Email Updates: | |
Status: | Closed | Impact on me: | |
Category: | MySQL Server: Packaging | Severity: | S1 (Critical) |
Version: | pre-5.0.48-enterpise, 5.1.21, 5.0.44-sp1 | OS: | Any |
Assigned to: | Daniel Fischer | CPU Architecture: | Any |
[28 Aug 2007 20:32]
Alexey Stroganov
[29 Aug 2007 13:03]
Daniel Fischer
Bug will not be present in the final 5.0.48 binaries.
[29 Aug 2007 23:51]
Kolbe Kegel
This is also present in 5.1.21 release binaries, sadly...
[30 Aug 2007 5:24]
Daniel Fischer
In this case it will also be fixed in 5.1.22.
[31 Aug 2007 2:06]
Paul DuBois
Noted in 5.1.22 changelog. mysql_install_db could fail to find its message file. Also added a note to 5.1.21 changelog noting the problem and how to solve it.
[7 Sep 2007 8:06]
Daniel Fischer
Bug#30765 was marked as a duplicate of this bug.
[11 Sep 2007 17:35]
Kolbe Kegel
This bug affects newly-released 5.0.44-sp1 binaries.
[11 Sep 2007 18:17]
Kolbe Kegel
This bug means that the server *will not start* unless you use the --language option to tell it to look in a non-standard location for its language files. The real problem is that the "mysql" path component has been omitted from the location mysqld is searching by default. For example: 070911 9:46:14 [ERROR] Can't find messagefile '/home/kolbe/MySQL/inst/mysql-enterprise-gpl-5.0.44sp1-linux-x86_64-glibc23/share/english/errmsg.sys' Meanwhile, the appropriate errmsg.sys file is actually located here: /home/kolbe/MySQL/inst/mysql-enterprise-gpl-5.0.44sp1-linux-x86_64-glibc23/share/mysql/english/errmsg.sys So, you must start the server (and run mysql_install_db) like this: mysqld_safe --language=/home/kolbe/MySQL/inst/mysql-enterprise-gpl-5.0.44sp1-linux-x86_64-glibc23/share/mysql/english/ You can also add this setting to the [mysqld] section of your my.cnf file.
[11 Sep 2007 19:50]
Kolbe Kegel
Another workaround is to create symlinks by cd-ing to the "share' subdirectory of the basedir where you unpacked the TGZ archive and executing this command: ln -s mysql/* . You should then be able to start the server normally.
[11 Sep 2007 23:53]
Anderson Vitous
The symlink workaround doesn't help mysql_install_db. Our onsite installations already pass 'language' to mysqld/mysqld_safe, but I needed to add 'language' *and* 'datadir' options to mysql_install_db invocation so it would run properly (first time a new database port is started.)
[15 Sep 2007 2:10]
James Day
Corrected binaries were released as 5.0.44sp1a.
[26 Sep 2007 7:08]
Daniel Fischer
Bug#31200 was marked as a duplicate of this bug.
[19 Oct 2007 9:23]
Daniel Fischer
Fixed outside the server source.
[12 Dec 2007 13:19]
Daniel Fischer
Bug#33113 was marked as a duplicate of this bug.