Mac下新安装的MySQL无法登陆root用户解决方法

也不知是何原因,新安装好的MySQL,如果尝试用mysql -u root -p登陆就会出现这样的错误,但是root用户根本就没有设置密码。
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)

下面是解决方案:
1、先在系统偏好设置中关闭MySQL服务;
2、在终端中输入

1
2
sudo su
mysqld_safe --skip-grant-tables --skip-networking &

这时便能越过权限表,直接登陆MySQL了。
3、新建一个终端,输入

1
mysql -u root

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

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

下面是在Mac中安装MySQLdb的方法:
由于要在Python里使用MySQL,但是Python内建的库中没有操作MySQL的玩意。所以得单独装一个,在安装下面的内容之前你首先得装一个MySQL。
在这里下载MySQLdb for Python,现在的最新版本是1.2.3,下载 MySQL-python-1.2.3.tar.gz 文件。(大视窗就直接 MySQL-python-1.2.3.win32-py2.7.msi 安装把)

在Finder直接双击压缩包或者 $tar zxvf 解压之后,打开里面的 site.cfg 文件找到这一行:

1
#mysql_config = /usr/local/bin/mysql_config

修改到你实际安装的mysql的位置,你可以一路 $cd .. 去看,我的是:

1
mysql_config = /usr/local/mysql/bin/mysql_config

然后$cd到解压的目录输入$python setup.py build,注意,这个操作之前你确保你的mac上已经安装gcc或者xcode+command line tools。
再$sudo python setup.py install,安装完毕,但是你import MySQLdb的时候会出现一大堆错误。这个时候你在用户目录中$ls -al然后打开$open .bash_profile文件添加以下内容

1
export DYLD_LIBRARY_PATH= "/usr/local/mysql/lib"

然后在终端执行$sudo ln -s /usr/local/mysql/lib/libmysqlclient.18.dylib /usr/lib/libmysqlclient.18.dylib

 

 

 

ps:http://www.euryugasaki.com/archives/853

你可能感兴趣的:(mysql)