网站地图    收藏   

主页 > 后端 > mysql数据库 >

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

来源:自学PHP网    时间:2015-04-16 10:51 作者: 阅读:

[导读] 官方资料:http: dev mysql com doc refman 5 0 en resetting-permissions html resetting-permissions-unix还有一个 20540;得参考的mysql安装,与python-mysql安装博客http: hearrain com 2011 01 498据...

官方资料: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> kill `cat /mysql-data-directory/host_name.pid`
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> mysqld_safe --init-file=/home/me/mysql-init &

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

进入mysql命令行下

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

然后再进入就ok了

自学PHP网专注网站建设学习,PHP程序学习,平面设计学习,以及操作系统学习

京ICP备14009008号-1@版权所有www.zixuephp.com

网站声明:本站所有视频,教程都由网友上传,站长收集和分享给大家学习使用,如由牵扯版权问题请联系站长邮箱904561283@qq.com

添加评论