我在 ubuntu 下装的 MySQL,只能用以下方式启动: 1、sudo mysql -u root -p 2、sudo su mysql -u root -p 简而言之就是只能在 root 下运行,但是程序中的生成表和修改查询都不可能会自动用 root 模式啊 求大神指教 :T_T:
1
cominghome 2017-12-27 10:35:26 +08:00
虽然我没用过乌班图,但是你可能对启动有什么误解。
|
2
p2pCoder 2017-12-27 10:38:05 +08:00
你这是在连接数据库。。。。。,不是启动
|
3
ZERO1411 OP 哦哦,我错了,那就是连接,就是它只能在 root 模式下连接,怎么样才能在普通模式下也能直接连接呢
|
4
ZERO1411 OP @cominghome 恩恩,把启动改成连接,你知道怎么改成在普通模式下就可以直接连接吗
|
6
cominghome 2017-12-27 10:44:22 +08:00
@ZERO1411 你需要新建一个有登录权限的普通帐号。
简单点来说,连接后:grant all on *.* to 'yourid'@'localhost' identified by 'yourpasswd'; 权限和允许登录的主机名灵活变动 |
7
liuhaotian 2017-12-27 10:45:54 +08:00 via iPhone
这里的 root 不是系统 root,是 mysql 的 root 用户,你把 sudo 去掉不行吗?
|
8
asen477 2017-12-27 10:50:55 +08:00
给一个执行权限呢。sudo chmod +x mysql 给一个执行权限呢
|
9
ZERO1411 OP @cominghome 是不是 all 后面还有一个 privileges,这个命令我试过了,但是不行
|
10
ytlm 2017-12-27 10:59:50 +08:00
google
|
11
cominghome 2017-12-27 11:02:29 +08:00
@ZERO1411 已经执行成功了啊。如果没有生效的话 flush privileges;刷新一下
另外,你应该用 mysql -udell -p 登录了 |
12
ZERO1411 OP @liuhaotian 去掉就 error:Access denied for user 'root'@'localhost'
|
13
keithszc 2017-12-27 11:12:20 +08:00
|
14
ZERO1411 OP @asen477 sudo chmod +x mysql 回车
chmod: 无法访问‘ mysql ’:没有那个文件或目录 |
15
ZERO1411 OP @cominghome 还是不行 ::>_<::
|
16
matsuz 2017-12-27 11:24:01 +08:00
A Basic MySQL Tutorial
https://www.digitalocean.com/community/tutorials/a-basic-mysql-tutorial How To Install WordPress with LAMP on Ubuntu 16.04 https://www.digitalocean.com/community/tutorials/how-to-install-wordpress-with-lamp-on-ubuntu-16-04 WordPress 安装教程里面有教你怎么创建 MySQL 用户。 MySQL 的用户系统和操作系统的用户系统完全是两套不同的系统,MySQL 的 root 不是操作系统的 root。 |
17
littleylv 2017-12-27 11:37:45 +08:00
楼主你可能需要先了解了解 Linux,感觉很多基础你都不懂
|
18
yearliny 2017-12-27 12:00:05 +08:00 via Android
把自己当前使用的用户,加入 MySQL 所在的用户组。
|
20
cloverstd 2017-12-27 12:40:12 +08:00
百度不到可以谷歌呀
|
22
alvinbone88 2017-12-27 13:46:15 +08:00
检查 /tmp/mysql.sock 的权限,估计就是当前用户没有这个文件的写权限,所以要用到 sudo
|
23
jeremaihloo 2017-12-27 14:05:32 +08:00
我估计你在什么神奇的地方做了什么神奇的操作
我觉着,你先了解下 linux 操作系统比较好 还有就是 mysql 的命令行连接的操作 |
24
ZERO1411 OP @jeremaihloo 不是的,我真的没做什么,就用 sudo apt-get install mysql-server mysql-common 然后它就只能 sudo mysql -u root -p 这样子,反正不能直接右键打开终端然后 mysql -u root -p
|
25
ZERO1411 OP @alvinbone88 咋检查
|
26
InternetExplorer 2017-12-27 14:32:22 +08:00
sudo apt-get install mysql-server mysql-common
中间还输了什么命令?做了错事不要装傻噢🤥 sudo mysql -u root -p |
27
jeremaihloo 2017-12-27 14:35:43 +08:00
@ZERO1411 #25 我在想你是不是把 ubuntu root 用户密码和 mysql root 用户密码搞混了,我看你用 sudo 执行密码还输错了两次
|
28
ZERO1411 OP @InternetExplorer 我发誓,我没有了,而且那边电脑我试了其他电脑,安装好 mysql,也只能加 sudo 才能连接
|
29
ZERO1411 OP @jeremaihloo mysql 我装的时候没设密码,直接回车的
|
30
InternetExplorer 2017-12-27 14:46:00 +08:00
|
31
SimonFu 2017-12-27 15:03:23 +08:00
总感觉你那些地方存在了误解。。
error:Access denied for user 'root'@'localhost' 这个报错是你在用 mysql 的的 root 用户去连接 mysql 的时候,因为密码或者权限的原因,被 MySQL 拒绝了,密码是 mysql 内用户的密码,而不是系统层面的用户的密码 |
32
ZERO1411 OP 大家说了好多,我基本上都一个个试了,但是就是不行,后来我把 MySQL 卸了然后重装,然后设置了密码(之前装的时候没设密码,直接回车的,后来设了密码),然后就可以直接 mysql -u root -p 访问了
|
33
FrankD 2018-11-21 00:06:45 +08:00
挖个坟,找到解释了,且亲测有效 [解决 msyql 需要 sudo 连接的问题
]( https://chengfeng.site/2018/06/02/%E8%A7%A3%E5%86%B3%E6%96%B0%E5%AE%89%E8%A3%85%E7%9A%84msyql%E9%9C%80%E8%A6%81sudo%E8%BF%9E%E6%8E%A5%E7%9A%84%E9%97%AE%E9%A2%98/) |