MacOSX下Mysql折腾记

本文记录在MacOSX下捣鼓Mysql,Yosemite 10.10 mysql 无法开机启动的解决办法.

在MacOSX启动和停止MySQL服务的

启动MySQL服务

sudo /Library/StartupItems/MySQLCOM/MySQLCOM start

停止MySQL服务

sudo /Library/StartupItems/MySQLCOM/MySQLCOM stop

重启MySQL服务

sudo /Library/StartupItems/MySQLCOM/MySQLCOM restart

或者可以安装MySQL.prefPane。在系统的偏好设置设置。发现在OS X Yosemite,mysql在系统偏好设置了随系统开机启动,结果无效,不怎怎么解决??大神帮忙

2014-11-16 12:23:52 更新

升级到10.10后,即使勾选了 系统偏好设置->mysql->开机自动启动。mysql还是无法开机启动,不知道为何?需要开机后手动去启动或者命令行启动。

mysqlstart='sudo /Library/StartupItems/MySQLCOM/MySQLCOM restart'

或者

mysql='sudo /usr/local/mysql/bin/mysql'

当然可以通过launchctl设置开机启动。可以参考这里

<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
    <key>Label</key>
    <string>com.mysql</string>
    <key>ProgramArguments</key>
    <array>
        <string>/usr/local/mysql/bin/mysqld_safe</string>
    </array>
    <key>RunAtLoad</key>
    <true/>
    <key>KeepAlive</key>
    <false/>
</dict>
</plist>

现在还没有弄明白 /usr/local/mysql/bin/mysqld_safe/usr/local/mysql/bin/mysql 有什么区别?

MacOSX #1045 无法登录 MySQL 服务器;忘记 root密码

报错:
ERROR 1045 (28000): Access denied for user ‘root‘@’localhost’ (using password: YES)

1、先在系统偏好设置中关闭MySQL服务;
2、在终端中输入

sudo su
/usr/local/mysql/bin/mysqld_safe --skip-grant-tables --skip-networking &

这时便能越过权限表,直接登陆MySQL了。

3、新建一个终端,输入

mysql -u root

4、 在MySQL中修改root用户密码即可:

mysql> UPDATE mysql.user SET password=PASSWORD('新密码') WHERE User='root';
mysql> FLUSH PRIVILEGES;

出现如下报错:

1
ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executing this statement.

解决: ALTER USER 'root'@'localhost' IDENTIFIED BY '123456';

导入数据库

如果是很大的sql的备份文件,用 phpmyadmin导入的话是会有问题。可以使用 mysqldump。

导出数据库

1
$ mysqldump -u root -p db >db.bak

推荐mysql相关的软件

参考