推荐学习书目
› Learn Python the Hard Way
Python Sites
› PyPI - Python Package Index
› http://diveintopython.org/toc/index.html
› Pocoo
值得关注的项目
› PyPy
› Celery
› Jinja2
› Read the Docs
› gevent
› pyenv
› virtualenv
› Stackless Python
› Beautiful Soup
› 结巴中文分词
› Green Unicorn
› Sentry
› Shovel
› Pyflakes
› pytest
Python 编程
› pep8 Checker
Styles
› PEP 8
› Google Python Style Guide
› Code Style from The Hitchhiker's Guide
ZERO1411
V2EX  ›  Python

(百度不到)如何修改 ubuntu 下 MySQL 使用权限问题

  •  
  •   ZERO1411 · Dec 27, 2017 · 5868 views
    This topic created in 3240 days ago, the information mentioned may be changed or developed.

    我在 ubuntu 下装的 MySQL,只能用以下方式启动: 1、sudo mysql -u root -p 2、sudo su mysql -u root -p 简而言之就是只能在 root 下运行,但是程序中的生成表和修改查询都不可能会自动用 root 模式啊 求大神指教 :T_T:

    33 replies  •  2018-11-21 00:06:45 +08:00
    cominghome
    cominghome
    Dec 27, 2017
    1
    虽然我没用过乌班图,但是你可能对启动有什么误解。
    p2pCoder
    p2pCoder
    Dec 27, 2017
    2
    你这是在连接数据库。。。。。,不是启动
    ZERO1411
    ZERO1411
    OP
    Dec 27, 2017
    3
    哦哦,我错了,那就是连接,就是它只能在 root 模式下连接,怎么样才能在普通模式下也能直接连接呢
    ZERO1411
    ZERO1411
    OP
    Dec 27, 2017
    4
    @cominghome 恩恩,把启动改成连接,你知道怎么改成在普通模式下就可以直接连接吗
    ZERO1411
    ZERO1411
    OP
    Dec 27, 2017
    5
    @p2pCoder 恩恩,把启动改成连接,你知道怎么改成在普通模式下就可以直接连接吗
    cominghome
    cominghome
    Dec 27, 2017
    6
    @ZERO1411 你需要新建一个有登录权限的普通帐号。
    简单点来说,连接后:grant all on *.* to 'yourid'@'localhost' identified by 'yourpasswd';
    权限和允许登录的主机名灵活变动
    liuhaotian
    liuhaotian
    Dec 27, 2017 via iPhone
    7
    这里的 root 不是系统 root,是 mysql 的 root 用户,你把 sudo 去掉不行吗?
    asen477
    asen477
    Dec 27, 2017
    8
    给一个执行权限呢。sudo chmod +x mysql 给一个执行权限呢
    ZERO1411
    ZERO1411
    OP
    Dec 27, 2017
    9
    @cominghome 是不是 all 后面还有一个 privileges,这个命令我试过了,但是不行
    ytlm
    ytlm
    Dec 27, 2017
    10
    google
    cominghome
    cominghome
    Dec 27, 2017
    11
    @ZERO1411 已经执行成功了啊。如果没有生效的话 flush privileges;刷新一下
    另外,你应该用 mysql -udell -p 登录了
    ZERO1411
    ZERO1411
    OP
    Dec 27, 2017
    12
    @liuhaotian 去掉就 error:Access denied for user 'root'@'localhost'
    keithszc
    keithszc
    Dec 27, 2017
    13
    ZERO1411
    ZERO1411
    OP
    Dec 27, 2017
    14
    @asen477 sudo chmod +x mysql 回车
    chmod: 无法访问‘ mysql ’:没有那个文件或目录
    ZERO1411
    ZERO1411
    OP
    Dec 27, 2017
    15
    @cominghome 还是不行 ::>_<::
    matsuz
    matsuz
    Dec 27, 2017
    16
    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。
    U7Q5tLAex2FI0o0g
    U7Q5tLAex2FI0o0g
    Dec 27, 2017
    17
    楼主你可能需要先了解了解 Linux,感觉很多基础你都不懂
    yearliny
    yearliny
    Dec 27, 2017 via Android
    18
    把自己当前使用的用户,加入 MySQL 所在的用户组。
    ZERO1411
    ZERO1411
    OP
    Dec 27, 2017
    19
    @littleylv 我是一点不懂 >_<
    cloverstd
    cloverstd
    Dec 27, 2017
    20
    百度不到可以谷歌呀
    ZERO1411
    ZERO1411
    OP
    Dec 27, 2017
    21
    @cloverstd 受教了
    alvinbone88
    alvinbone88
    Dec 27, 2017
    22
    检查 /tmp/mysql.sock 的权限,估计就是当前用户没有这个文件的写权限,所以要用到 sudo
    jeremaihloo
    jeremaihloo
    Dec 27, 2017
    23
    我估计你在什么神奇的地方做了什么神奇的操作

    我觉着,你先了解下 linux 操作系统比较好

    还有就是 mysql 的命令行连接的操作
    ZERO1411
    ZERO1411
    OP
    Dec 27, 2017
    24
    @jeremaihloo 不是的,我真的没做什么,就用 sudo apt-get install mysql-server mysql-common 然后它就只能 sudo mysql -u root -p 这样子,反正不能直接右键打开终端然后 mysql -u root -p
    ZERO1411
    ZERO1411
    OP
    Dec 27, 2017
    25
    @alvinbone88 咋检查
    InternetExplorer
    InternetExplorer
    Dec 27, 2017
    26
    sudo apt-get install mysql-server mysql-common
    中间还输了什么命令?做了错事不要装傻噢🤥
    sudo mysql -u root -p
    jeremaihloo
    jeremaihloo
    Dec 27, 2017
    27
    @ZERO1411 #25 我在想你是不是把 ubuntu root 用户密码和 mysql root 用户密码搞混了,我看你用 sudo 执行密码还输错了两次
    ZERO1411
    ZERO1411
    OP
    Dec 27, 2017
    28
    @InternetExplorer 我发誓,我没有了,而且那边电脑我试了其他电脑,安装好 mysql,也只能加 sudo 才能连接
    ZERO1411
    ZERO1411
    OP
    Dec 27, 2017
    29
    @jeremaihloo mysql 我装的时候没设密码,直接回车的
    InternetExplorer
    InternetExplorer
    Dec 27, 2017
    30
    @ZERO1411
    sudo apt-get install mysql-server mysql-common
    运行完这个 mysql 服务应该不会自动启动吧
    SimonFu
    SimonFu
    Dec 27, 2017
    31
    总感觉你那些地方存在了误解。。
    error:Access denied for user 'root'@'localhost' 这个报错是你在用 mysql 的的 root 用户去连接 mysql 的时候,因为密码或者权限的原因,被 MySQL 拒绝了,密码是 mysql 内用户的密码,而不是系统层面的用户的密码
    ZERO1411
    ZERO1411
    OP
    Dec 27, 2017
    32
    大家说了好多,我基本上都一个个试了,但是就是不行,后来我把 MySQL 卸了然后重装,然后设置了密码(之前装的时候没设密码,直接回车的,后来设了密码),然后就可以直接 mysql -u root -p 访问了
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   1110 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 47ms · UTC 18:16 · PVG 02:16 · LAX 10:16 · JFK 13:16
    ♥ Do have faith in what you're doing.