您的位置:首页 > 数据库 > MySQL

mac下修改mysql-root密码-各种权限问题解决

2014-07-27 23:25 861 查看
官方资料:http://dev.mysql.com/doc/refman/5.0/en/resetting-permissions.html#resetting-permissions-unix

还有一个值得参考的mysql安装,与python-mysql安装博客http://hearrain.com/2011/01/498

据官方文档说,

For example, if you run the server using the mysql login account, you should log in as mysql before using the instructions. Alternatively, you can log in as root, but in this case you must start mysqld with the --user=mysql option. If you start the server as root without using --user=mysql, the server may create root-owned files in the data directory, such as log files, and these may cause permission-related problems for future server startups.
如果在安装完mysql后,当你用root登录的时候,必须加上--user=mysql,否则的话,服务器会自动创建root-owned文件,这些就会导致权限的问题

我之前就是因为直接登录了,然后root密码无修改权限,各种无权限

解决的办法就是

shell> [code]kill `cat /mysql-data-directory/host_name.pid`
[/code]
mysql-data-directory   的路径一般是 /usr/local/mysql/data下的包含你的电脑名称的以pid结尾的文件

UPDATE mysql.user SET Password=PASSWORD('MyNewPass') WHERE User='root';
FLUSH PRIVILEGES;

结束进程之后,把上面的两句话放到一个文件中例如update_passwd,该文件在/usr/local/下

shell> [code]mysqld_safe --init-file=/home/me/mysql-init &
[/code]

然后sudo su进入root权限,进入mysql下bin输入以上命令,结束后(我的好像没有结束,就另开了一个terminal),

进入mysql命令行下

UPDATE mysql.user SET Password=PASSWORD('MyNewPass')

->
WHERE User='root';
[/code]

然后再进入就ok了
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: