FreeBSD Port: mysql-server-5.5.9

Patrick Powell papowell at astart.com
Wed Mar 16 17:46:55 UTC 2011


On 03/10/11 11:37, joeb wrote:
> I have been using mysql since fbsd 7.2 and always just issued the
> mysql_install_db command on the command line to create mysql's control
> databases and it always worked fine.
>
> But now with fbsd 8.2 I get the following error and have no idea why.
> I installed using pkg_add -r mysql55-server command.
>
> I see that 3 weeks ago you updated the mysql55-server port from mysql 554 to
> 559.
> I believe there is an error in your update causing the mysql_install_db
> command to error out.
> The error message follows.
>
>
> # /usr/local/bin>mysql_install_db --user=mysql      or
> #root>mysql_install_db --user=mysql
>
>
> FATAL ERROR: Could not find ./bin/my_print_defaults
>
> If you compiled from source, you need to run 'make install' to
> copy the software into the correct location ready for operation.
>
> If you are using a binary release, you must either be at the top
> level of the extracted archive, or pass the --basedir option
> pointing to that location.
> ********* end of error msg. ********
>
>
> # /usr/local/bin>locate my_print_defaults
> /usr/local/bin/my_print_defaults
>
> As you can see the script the error message says it can not find is really
> in the same location as
> the mysql_install_db script, so it should have found it.
>
> I ended up pointing to the 8.1 packages with the pkg-add command to install
> and then
> the mysql-server5.5.4  mysql_install_db command ran from the command line
> without any errors.
>
>
> _______________________________________________
> freebsd-ports at freebsd.org mailing list
> http://lists.freebsd.org/mailman/listinfo/freebsd-ports
> To unsubscribe, send any mail to "freebsd-ports-unsubscribe at freebsd.org"
>
The problem appears to be in the mysql_install_db script
# All unrecognized arguments to this script are passed to mysqld.

basedir="" <<<<<<<<<<*Should be /usr/local*
builddir=""
ldata="./data"
langdir=""
srcdir=""

I suspect that when the mysql_install_db script was generated that the
source for the mysql_install_db was update/modified/changed:


basedir="" <<<*mysql-5.5.9/scripts*
builddir=""
ldata="@localstatedir@"
langdir=""
srcdir=""


I suspect that at bindir@ would be the appropriate value.  But if you do 
this you get:

basedir="./bin"
builddir=""
ldata="./data"
langdir=""
srcdir=""

I suspect that given the level of complexity of the build process
that trying to patch the source files to fix this would be extremely
difficult.  The other approach is to modify the PORT Makefile and have
the mysql_install_db modified before installation with the correct binary
directory.

-- 
Patrick Powell                 Astart Technologies
papowell at astart.com            1530 Jamacha Road, Suite X,
Network and System             San Diego, CA 92019
   Consulting                   858-874-6543
Web Site: www.astart.com



More information about the freebsd-ports mailing list