首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >MySQL通用设置

问MySQL通用设置
EN

Stack Overflow用户
提问于 2012-10-03 20:47:50
回答 1查看 363关注 0票数 0

我是MySQL的新手,我遇到了一些常见的问题,谢谢您的帮助:

我的操作系统是MAC SnowLeopard,当我在终端输入' mysql‘时,我可以成功地进入mysql系统,但是,我无权创建数据库:

代码语言:javascript
复制
mysql> create database A;
ERROR 1044 (42000): Access denied for user ''@'localhost' to database 'a'

我尝试了命令行“mysql -u root”,得到了以下命令:

代码语言:javascript
复制
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)

我在想,我可以为数据库设置用户名,这使我无法使用root用户名进入mysql?

然后我尝试将'localhost‘作为用户名,我猜想或者记得我是否设置了它,使用命令'mysql -u localhost',我可以成功地登录到mysql,但仍然不能创建数据库,

代码语言:javascript
复制
mysql> create database a;
ERROR 1044 (42000): Access denied for user ''@'localhost' to database 'a'

我不确定:

  1. 为什么根不起作用;
  2. 如果我自己设置用户名和密码,before...sorry...really现在没有内存了。
  3. 如果我以前把用户名设置为'localhost‘,我就记不起密码了,所以我没有创建数据库的权限?
  4. 在没有根访问的情况下,我应该做什么来恢复密码?
  5. 如果不可能,如何卸载?.bash_profile中用于mysql的路径是/usr/local/mysql/bin。

我得到了一个检查: sudo端口列表安装了\ grep mysql

代码语言:javascript
复制
mysql5                         @5.1.65         databases/mysql5
mysql5                         @5.1.65         databases/mysql5
py26-mysql                     @1.2.3          python/py-mysql

/usr/local/ mysql /bin中的mysql是否引用这里列出的这个?

编辑运行ps -ef \ grep的结果:

代码语言:javascript
复制
    0   107     1   0   0:00.01 ??         0:00.02 /bin/sh /usr/local/mysql/bin/mysqld_safe --datadir=/usr/local/mysql/data --pid-file=/usr/local/mysql/data/XXX-MacBook-Pro.local.pid
   74   245   107   0   0:03.51 ??         0:18.35 /usr/local/mysql/bin/mysqld --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --plugin-dir=/usr/local/mysql/lib/mysql/plugin --user=mysql --log-error=/usr/local/mysql/data/XXX-MacBook-Pro.local.err --pid-file=/usr/local/mysql/data/XXX-MacBook-Pro.local.pid
  501  3790   417   0   0:00.00 ttys000    0:00.00 grep mysql
  501  3337  1271   0   0:00.00 ttys001    0:00.01 mysql -u localhost
EN

回答 1

Stack Overflow用户

发布于 2012-10-03 20:56:34

你需要重置你的根密码。要做到这一点,请遵循以下简单步骤:

  • 停止MySQL:sudo port unload mysql5-server
  • 使用MySQL启动/opt/local/lib/mysql5/bin/mysqld_safe --skip-grant-tables &
  • 连接到MySQL:mysql -uroot
  • 重置您的MySQL密码:
    • mysql>使用mysql;
    • mysql> update user set password=PASSWORD(“新根密码”),其中User='root';
    • mysql>刷新特权;
    • mysql>退出

​

  • 再次停止MySQL sudo killall -9 mysqld_safe
  • 重新启动MySQL正常sudo port load mysql5-server
  • 连接到MySQL:mysql -uroot -p

编辑

添加了停止/启动MySQL的命令。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/12716648

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档