美文网首页Sql
终端安装使用mysql

终端安装使用mysql

作者: CodingHou | 来源:发表于2017-02-07 12:11 被阅读28次

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服务

MySQL2.jpg

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

相关文章

网友评论

    本文标题:终端安装使用mysql

    本文链接:https://www.haomeiwen.com/subject/ilwpittx.html