1.在官网下载安装。
2.输入Mysql -uroot -p 报错
-zsh: mysql: command not found
解决办法:
利用软连接
$ ln -s /usr/local/mysql/bin/mysql /usr/bin
提示没有权限
$ ln: /usr/bin/mysql: Operation not permitted
不要紧,我们把权限升高点
$ sudo ln -s /usr/local/mysql/bin/mysql /usr/bin
但是特么的还是提示没有权限
$ ln: /usr/bin/mysql: Operation not permitted
还报楼上的错,靠,真是比了狗的!!!别慌,先找个临时解决的办法,这个大招只能在当前窗口下放
$ alias mysql=/usr/local/mysql/bin/mysql
然后就可以Mysql -uroot -p 输入密码然后登录了
3.针对 ln: /usr/bin/mysql: Operation not permitted
是由于Mac新系统限制的问题:
sudo 命令后, ln: /usr/bin/mysql: Operation not permitted 仍然提示权限不足的话,出现如下提示的原因是:
OS X 10.11 中System Integrity Protection 的功能,阻止了写入的操作的,默认是开启的,需要关闭。
关闭方式:
重启电脑,长按Cmd+R,进入 Recovery 模式。然后打开终端工具 ,输入命令:csrutil disable,然后再次重启电脑即可。
再次开启:csrutil enable
MySQL1.jpg
然后再
$ sudo ln -s /usr/local/mysql/bin/mysql /usr/bin
就可以不用使用alias ,直接输入mysql了
或者,在.bash_profile 文件中建立path,但是需要每次打开终端的时候source .bash_profile
4、针对mysql -uroot -p 报错
mysqladmin: connect to server at 'localhost' failed
error: 'Access denied for user 'root'@'localhost' (using password: NO)’
那就是登录有问题
1)先在设置里停止Mysql服务
2)然后打开终端输入命令
sudo /usr/local/mysql/bin/mysqld_safe --user=mysql --skip-grant-tables --skip-networking
--skip-grant-tables:不启动grant-tables(授权表),跳过权限控制。
--skip-networking :跳过TCP/IP协议,只在本机访问(这个选项不是必须的。可以不用)
3)保留开启mysqld_safe的终端,新建一个终端,输入命令:mysql
此时我们就可以直接登录到MySQL服务了。
4)查询MySQL的用户信息,输入SQL命令:
这一步骤熟悉的人可以跳过,在mysql 5.7以前的版本,密码列的英文名是password,但是在5.7版本改成了authentication_string,这点是需要注意的。
select host,user,authentication_string from user;
如果select无效,先输入 choose user
5)新设置用户或更改密码后需用flush privileges刷新MySQL的系统权限相关表,否则会出现拒绝访问,
还有一种方法,就是重新启动mysql服务器,来使新设置生效。然后就可以登录了
重置密码指令
mysqladmin -u root password 123456
网友评论