On Jun 8, 2009, at 08:55, Chris Janton wrote:

On 2009-06-07 , at 13:17 , Ryan Schmidt wrote:

This is on my 10.3 system.

I unfortunately installed mysql5-server on my 10.3.9 system after getting an "obsolete +server" message.

My startup files have become confused.

Sorry about that. I did not test on 10.3. I can try to do so in a few days. What error messages are you encountering?

ad...@x:admin:133 $ sudo port upgrade outdated
--->  Fetching mysql5
---> Attempting to fetch mysql-5.0.82.tar.gz from http:// mysql.mirrors.pair.com/Downloads/MySQL-5.0/
--->  Verifying checksum(s) for mysql5
--->  Extracting mysql5
--->  Applying patches to mysql5
--->  Configuring mysql5
The +server variant is obsolete. Please install the mysql5-server port instead.
--->  Building mysql5
--->  Staging mysql5 into destroot
--->  Deactivating mysql5 @5.0.81_0+server
--->  Installing mysql5 @5.0.82_0+server
--->  Activating mysql5 @5.0.82_0+server
--->  Cleaning mysql5
ad...@x:admin:134 $

at this point I can't "talk" to the previous version of mysql5 using mysql or mysqladmin...

ad...@x:mysql5:162 $ mysql -u face -p
Enter password:
ERROR 1251: Client does not support authentication protocol requested by server; consider upgrading MySQL client
ad...@x:mysql5:163 $ ps -axww | grep sql
21334 std S 0:00.01 sh /opt/local/bin/mysqld_safe --datadir=/ var/mysql --pid-file=/var/mysql/FOO.pid 21372 std S 0:07.13 /opt/local/libexec/mysqld --basedir=/opt/ local --datadir=/var/mysql --user=mysql --pid-file=/var/mysql/ FOO.pid --port=3306 --socket=/tmp/mysql.sock
28761 std  R+     0:00.00 grep sql

There is no way to stop/start the old MySQL5 since the startup item is gone...

ad...@x:mysql5:166 $ ls /Library/StartupItems
apache2/

Well, you should stop the old version of MySQL (or any server port) before installing the new version. To minimize downtime you can

sudo port install mysql5

which will build and install the new version (which is what should take the bulk of the time) but will fail to activate it because the old version is still active. Then you can

* turn the old MySQL off (if you were on 10.4+ you would use "sudo port unload mysql5")
* deactivate the old mysql5
* activate the new mysql5 and mysql5-server
* start the new MySQL ("sudo port load mysql5-server" on 10.4+)

Since < 10.4 doesn't have launchd and systemstarter doesn't have dynamic starting and stopping of services you either kill and start the processes manually or restart the computer after editing your hostconfig.


OK - so I "kill"ed the old mysql5. Still have no working command line tools yet...

ad...@x:mysql5:169 $ mysql -u face -p
Enter password:
ERROR 1251: Client does not support authentication protocol requested by server; consider upgrading MySQL client

Hmm. I haven't checked the changelog. Not sure if something about the authentication protocol changed in this version.


ad...@x:admin:134 $ sudo port install mysql5-server
--->  Fetching mysql5-server
--->  Verifying checksum(s) for mysql5-server
--->  Extracting mysql5-server
--->  Configuring mysql5-server
--->  Building mysql5-server
--->  Staging mysql5-server into destroot
--->  Creating systemstarter control script
###########################################################
# A startup item has been generated that will aid in
# starting mysql5-server with SystemStarter. It is disabled
# by default. Add the following line to /etc/hostconfig
# or /opt/local/etc/rc.conf to start it at startup:
#
# MYSQL5-SERVER=-YES-
###########################################################
--->  Installing mysql5-server @5.0.82_0
******************************************************
* In order to setup the database, you might want to run
* sudo -u mysql mysql_install_db5
* if this is a new install
******************************************************
--->  Activating mysql5-server @5.0.82_0
--->  Cleaning mysql5-server
ad...@x:admin:135 $

add the MYSQL5-SERVER line to /etc/hostconfig

now we try to start mysql...

ad...@x:admin:135 $ sudo SystemStarter start mysql5-server
Welcome to Macintosh.
/System/Library/StartupItems/SecurityServer/SecurityServer: line 41: MYSQL5-SERVER=-YES~: command not found /System/Library/StartupItems/Network/Network: line 41: MYSQL5- SERVER=-YES~: command not found
Starting SecurityServer
Initializing network
/System/Library/StartupItems/Disks/Disks: line 41: MYSQL5-SERVER=- YES~: command not found
Checking disks
/System/Library/StartupItems/NIS/NIS: line 41: MYSQL5-SERVER=-YES~: command not found /System/Library/StartupItems/NFS/NFS: line 41: MYSQL5-SERVER=-YES~: command not found
lockfile: Sorry, giving up on "/var/run/NFS.StartupItem"
/Library/StartupItems/mysql5-server/mysql5-server: line 41: MYSQL5- SERVER=-YES~: command not found
Startup complete.
Hangup
ad...@x:admin:136 $

I copied/pasted the MYSQL5-SERVER line from the terminal.
This is copied/pasted from /etc/hostconfig

 MYSQL5-SERVER=-YES-

For the time being I have manually started mysql on the 10.3 system and will hand start if we have to reboot.

I am guessing it is using the port name as the key for the hostconfig file, and that the hostconfig file does not support hyphens in its variable names. So that would be a problem. Perhaps I can tell it to continue to use the key "mysql5" ("startupitem.name mysql5"?) You can try adding that to the mysql5-server port already if you want, but I will also test when I'm back at my Panther machine tonight.

_______________________________________________
macports-users mailing list
[email protected]
http://lists.macosforge.org/mailman/listinfo.cgi/macports-users

Reply via email to