Note that there are some explanatory texts on larger screens.

plurals
  1. PObrew install mysql on snow leopard not quite working
    text
    copied!<p>I installed mysql via brew, looks like the install went ok. Mysql will not let me set root password, even if I get tricky. Appears as though tables are missing altogether. Detailed output below.</p> <pre><code>jb:~ jb$ brew install mysql ==&gt; Downloading http://mysql.mirrors.pair.com/Downloads/MySQL-5.1/mysql-5.1.55.tar.gz ######################################################################## 100.0% ==&gt; Downloading patches ==&gt; Patching patching file scripts/mysqld_safe.sh Hunk #1 succeeded at 384 (offset 1 line). patching file scripts/mysql_config.sh ==&gt; ./configure --without-docs --without-debug --disable-dependency-tracking --prefix=/usr/local/Cellar/mysql/5.1.55 --l ==&gt; make install ==&gt; Caveats Set up databases with: unset TMPDIR mysql_install_db If this is your first install, automatically load on login with: mkdir -p ~/Library/LaunchAgents cp /usr/local/Cellar/mysql/5.1.55/com.mysql.mysqld.plist ~/Library/LaunchAgents/ launchctl load -w ~/Library/LaunchAgents/com.mysql.mysqld.plist If this is an upgrade and you already have the com.mysql.mysqld.plist loaded: launchctl unload -w ~/Library/LaunchAgents/com.mysql.mysqld.plist cp /usr/local/Cellar/mysql/5.1.55/com.mysql.mysqld.plist ~/Library/LaunchAgents/ launchctl load -w ~/Library/LaunchAgents/com.mysql.mysqld.plist Note on upgrading: We overwrite any existing com.mysql.mysqld.plist in ~/Library/LaunchAgents if we are upgrading because previous versions of this brew created the plist with a version specific program argument. Or start manually with: mysql.server start ==&gt; Summary /usr/local/Cellar/mysql/5.1.55: 220 files, 42M, built in 17.6 minutes jb:~ jb$ echo $TMPDIR /var/folders/uL/uLRuoWTeFi86v2TkZkknLU+++TI/-Tmp-/ jb:~ jb$ unset TMPDIR jb:~ jb$ echo $TMPDIR jb:~ jb$ mysql_install_db Installing MySQL system tables... OK Filling help tables... OK To start mysqld at boot time you have to copy support-files/mysql.server to the right place for your system PLEASE REMEMBER TO SET A PASSWORD FOR THE MySQL root USER ! To do so, start the server, then issue the following commands: /usr/local/Cellar/mysql/5.1.55/bin/mysqladmin -u root password 'new-password' /usr/local/Cellar/mysql/5.1.55/bin/mysqladmin -u root -h jb.local password 'new-password' Alternatively you can run: /usr/local/Cellar/mysql/5.1.55/bin/mysql_secure_installation which will also give you the option of removing the test databases and anonymous user created by default. This is strongly recommended for production servers. See the manual for more instructions. You can start the MySQL daemon with: cd /usr/local/Cellar/mysql/5.1.55 ; /usr/local/Cellar/mysql/5.1.55/bin/mysqld_safe &amp; You can test the MySQL daemon with mysql-test-run.pl cd /usr/local/Cellar/mysql/5.1.55/mysql-test ; perl mysql-test-run.pl Please report any problems with the /usr/local/Cellar/mysql/5.1.55/bin/mysqlbug script! jb:~ jb$ cp /usr/local/Cellar/mysql/5.1.55/com.mysql.mysqld.plist ~/Library/LaunchAgents/ jb:~ jb$ launchctl load -w ~/Library/LaunchAgents/com.mysql.mysqld.plist jb:~ jb$ /usr/local/Cellar/mysql/5.1.55/bin/mysql_secure_installation NOTE: RUNNING ALL PARTS OF THIS SCRIPT IS RECOMMENDED FOR ALL MySQL SERVERS IN PRODUCTION USE! PLEASE READ EACH STEP CAREFULLY! In order to log into MySQL to secure it, we'll need the current password for the root user. If you've just installed MySQL, and you haven't set the root password yet, the password will be blank, so you should just press enter here. Enter current password for root (enter for none): ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO) </code></pre> <p>MADNESS ENSUING...</p> <p>I made sure I owned usr/local:</p> <pre><code>jb:~ jb$ sudo chown -R `whoami` /usr/local jb:~ jb$ which mysql /usr/local/bin/mysql </code></pre> <p>I even tried starting mysql with 'skip grant tables' and setting the password:</p> <pre><code>jb:~ jb$ launchctl unload -w ~/Library/LaunchAgents/com.mysql.mysqld.plist jb:~ jb$ killall mysqld No matching processes belonging to you were found jb:~ jb$ mysqld_safe --skip-grant-tables 110314 15:09:01 mysqld_safe Logging to '/usr/local/var/mysql/jb.local.err'. 110314 15:09:01 mysqld_safe Starting mysqld daemon with databases from /usr/local/var/mysql </code></pre> <p>Then in another terminal window:</p> <pre><code>jb:~ jb$ mysql -u root Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 1 Server version: 5.1.55 Source distribution Copyright (c) 2000, 2010, Oracle and/or its affiliates. All rights reserved. This software comes with ABSOLUTELY NO WARRANTY. This is free software, and you are welcome to modify and redistribute it under the GPL v2 license Type 'help;' or '\h' for help. Type '\c' to clear the current input statement. mysql&gt; UPDATE mysql.user SET Password=PASSWORD('pretend_strong_password_here') WHERE User='root'; FLUSH PRIVILEGES; Query OK, 0 rows affected (0.02 sec) Rows matched: 0 Changed: 0 Warnings: 0 Query OK, 0 rows affected (0.03 sec) mysql&gt; </code></pre> <p>What the heck, shouldn't that affect a row? It is like the tables did not get made? Should I have ran <code>mysql_install_db</code> with <code>sudo</code>?</p> <p>PS: I probably brought this all on myself by cavalierly ignoring that the brew formula failed on downloading mysql-5.1.54 and I edited it to dl 5.1.55. But, aside from that, is there anything you can see that I have done wrong here?</p> <p>Edit: <a href="http://forums.mysql.com/read.php?10,277700,280261#msg-280261" rel="nofollow">http://forums.mysql.com/read.php?10,277700,280261#msg-280261</a> and <a href="http://palmeradev.blogspot.com/2010/12/fix-bug-mysql-root-user-not-created.html" rel="nofollow">http://palmeradev.blogspot.com/2010/12/fix-bug-mysql-root-user-not-created.html</a></p> <p>indicate a couple of mysql queries to create the root user on the mysql.user table. Those queries don't work for me, I get an error. </p> <pre><code> mysql&gt; INSERT INTO user VALUES ('localhost','root',password('newpassword'),'Y','Y ','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y', 'Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','' ,'','','',0,0,0,0); ERROR 1136 (21S01): Column count doesn't match value count at row 1 </code></pre>
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload