Mysql连接到服务器:拒绝用户访问root@localhost

Mysql连接到服务器:拒绝用户访问root@localhost,mysql,macos,pid,my.cnf,Mysql,Macos,Pid,My.cnf,edit9:是否有可能我只是缺少对文件夹的一些权限?我真的非常感谢您的建议。 edit3:由于这篇文章没有得到足够的回复,而且这绝对是至关重要的,我会尽快把它进行下去,我重新构建了我的文章,以显示我认为我到目前为止已经扣除的内容。 注意:通过许多不同的命令正常登录根本不起作用 我的过程: 删除了运行以下命令的mysql(我忘记了什么吗?) sudorm/usr/local/mysql sudorm-rf/usr/local/mysql* sudo rm-rf/Library/StartupIte

edit9:是否有可能我只是缺少对文件夹的一些权限?我真的非常感谢您的建议。

edit3:由于这篇文章没有得到足够的回复,而且这绝对是至关重要的,我会尽快把它进行下去,我重新构建了我的文章,以显示我认为我到目前为止已经扣除的内容。

注意:通过许多不同的命令正常登录根本不起作用

我的过程:

  • 删除了运行以下命令的mysql(我忘记了什么吗?)
  • sudorm/usr/local/mysql
    sudorm-rf/usr/local/mysql*
    sudo rm-rf/Library/StartupItems/MySQLCOM
    sudorm-rf/Library/PreferencePanes/MySQL*
    rm-rf~/Library/PreferencePanes/MySQL*
    sudorm-rf/Library/Receipts/mysql*
    sudorm-rf/Library/Receipts/MySQL*
    sudorm-rf/var/db/receipts/com.mysql.

  • 下载mysql-5.7.9-osx10.10-x86_64.dmg

  • 使用标准位置上的标准安装来安装mysql-5.7.9-osx10.9-x86_64.pkg。(为什么我下载10.10时pkg是10.9?我的OS X版本是10.10 yosemite)

  • 我收到一个通知,通知我为root@localhost已创建。我把这个写得很好

  • 问题就从这里开始

  • 正在尝试通过以下终端启动mysql服务器:
    
    sudo/usr/local/mysql/support files/mysql.server start
    返回:
    
    启动MySQL
    .. 错误!服务器在不更新PID文件(/var/run/mysqld/mysqld.PID)的情况下退出。
    

  • 在对这个pid文件进行了一些研究之后,我意识到我需要在/etc中创建我的.cnf,所以我做到了。。
    
    cd/usr/local/mysql/支持文件/
    sudo cp my-default.cnf/etc/my.cnf

  • 编辑并保存了我的.cnf<代码> cd/etc sudo nano my.cnf,输入行
    
    pid文件=/var/run/mysqld/mysqld.pid

  • 已创建目录

    sudo mkdir/var/run/mysqld sudotouch/var/run/mysqld/mysqld.pid sudo chown-R mysql:mysql/var/run/mysqld

  • 假设my.cnf现在应全部设置,包括pid文件。我试图再次启动服务器。然而,一切都没有改变

  • 好的,然后我决定好了,我将尝试更改安装时临时设置的密码

  • 我停止mysql服务器(它不应该运行,只是以防万一)
    sudo/usr/local/mysql/supportfiles/mysql.server-stop
    。这可能很有趣,因为我最终以某种壳的形式结束,在这种形式中我什么都做不了。我必须从这里重新启动终端

  • 尝试使用
    sudo mysql\u safe以安全模式启动mysql——跳过授权表
    返回:

    151110 10:28:10 mysqld_安全登录到“/usr/local/var/mysql/Robs MacBook Pro.local.err”。 151110 10:28:10 mysqld_使用/usr/local/var/mysql中的数据库安全启动mysqld守护程序 151110 10:28:10 pid文件/usr/local/var/mysql/Robs-MacBook-Pro.local.pid中的mysqld_safe mysqld结束

  • 所以还是关于这个pid文件的。。这里没有为basedir/datadir/port/server\u id/socket设置值。。也许就是这样?如果是,我应该在这里设置什么值

    当我在互联网上随意提出不同的建议时,经常出现的其他错误包括:
    
    用户的访问被拒绝root@localhost使用密码:是/否
    
    无法通过套接字连接到mysql服务器..

    /usr/local/var/mysql/data/mysqld.local.err
    最后几行:

    2015-11-17T08:13:55.755115Z 0 [Warning] TIMESTAMP with implicit DEFAULT value is deprecated. Please use --explicit_defaults_for_timestamp server option (see documentation for more details).
    2015-11-17T08:13:55.756291Z 0 [Warning] 'NO_ZERO_DATE', 'NO_ZERO_IN_DATE' and 'ERROR_FOR_DIVISION_BY_ZERO' sql modes should be used with strict mode. They will be merged with strict mode in a future release.
    2015-11-17T08:13:55.756310Z 0 [Warning] 'NO_AUTO_CREATE_USER' sql mode was not set.
    2015-11-17T08:13:55.780792Z 0 [Warning] Insecure configuration for --secure-file-priv: Current value does not restrict location of generated files. Consider setting it to a valid, non-empty path.
    2015-11-17T08:13:55.781750Z 0 [Note] /usr/local/mysql/bin/mysqld (mysqld 5.7.9) starting as process 94 ...
    2015-11-17T08:13:55.796438Z 0 [Warning] Setting lower_case_table_names=2 because file system for /usr/local/mysql/data/ is case insensitive
    2015-11-17T08:13:55.802783Z 0 [Note] InnoDB: Mutexes and rw_locks use GCC atomic builtins
    2015-11-17T08:13:55.802816Z 0 [Note] InnoDB: Uses event mutexes
    2015-11-17T08:13:55.802826Z 0 [Note] InnoDB: GCC builtin __atomic_thread_fence() is used for memory barrier
    2015-11-17T08:13:55.802834Z 0 [Note] InnoDB: Compressed tables use zlib 1.2.3
    2015-11-17T08:13:55.804723Z 0 [Note] InnoDB: Number of pools: 1
    2015-11-17T08:13:55.808009Z 0 [Note] InnoDB: Using CPU crc32 instructions
    2015-11-17T08:13:55.821713Z 0 [Note] InnoDB: Initializing buffer pool, total size = 128M, instances = 1, chunk size = 128M
    2015-11-17T08:13:55.843514Z 0 [Note] InnoDB: Completed initialization of buffer pool
    2015-11-17T08:13:55.898365Z 0 [Note] InnoDB: Highest supported file format is Barracuda.
    2015-11-17T08:13:55.935027Z 0 [Note] InnoDB: Creating shared tablespace for temporary tables
    2015-11-17T08:13:55.935222Z 0 [Note] InnoDB: Setting file './ibtmp1' size to 12 MB. Physically writing the file full; Please wait ...
    2015-11-17T08:13:55.950640Z 0 [Note] InnoDB: File './ibtmp1' size is now 12 MB.
    2015-11-17T08:13:55.952035Z 0 [Note] InnoDB: 96 redo rollback segment(s) found. 96 redo rollback segment(s) are active.
    2015-11-17T08:13:55.952061Z 0 [Note] InnoDB: 32 non-redo rollback segment(s) are active.
    2015-11-17T08:13:55.952538Z 0 [Note] InnoDB: Waiting for purge to start
    2015-11-17T08:13:56.070486Z 0 [Note] InnoDB: 5.7.9 started; log sequence number 2471474
    2015-11-17T08:13:56.070792Z 0 [Note] InnoDB: Loading buffer pool(s) from /usr/local/mysql-5.7.9-osx10.9-x86_64/data/ib_buffer_pool
    2015-11-17T08:13:56.071268Z 0 [Note] InnoDB: not started
    2015-11-17T08:13:56.072953Z 0 [Note] Plugin 'FEDERATED' is disabled.
    2015-11-17T08:13:56.075825Z 0 [Note] InnoDB: Buffer pool(s) load completed at 151117  9:13:56
    2015-11-17T08:13:56.086709Z 0 [Warning] Failed to set up SSL because of the following SSL library error: SSL context is not usable without certificate and private key
    2015-11-17T08:13:56.112666Z 0 [Note] Server hostname (bind-address): '*'; port: 3306
    2015-11-17T08:13:56.112759Z 0 [Note] IPv6 is available.
    2015-11-17T08:13:56.112804Z 0 [Note]   - '::' resolves to '::';
    2015-11-17T08:13:56.113081Z 0 [Note] Server socket created on IP: '::'.
    2015-11-17T08:13:56.180223Z 0 [Note] Event Scheduler: Loaded 0 events
    2015-11-17T08:13:56.180406Z 0 [Note] /usr/local/mysql/bin/mysqld: ready for connections.
    Version: '5.7.9'  socket: '/tmp/mysql.sock'  port: 3306  MySQL Community Server (GPL)
    
    Vasfed的一个好建议的结果: 然后,按照所述创建txt文件。使用我使用的目录和文件名输入命令:
    mysqld\u safe--init file=/home/mysql init&
    返回:
    Robs-MacBook-Pro:home-leroyklotz$151118 09:25:23 mysqld_安全登录到“/usr/local/var/mysql/Robs-MacBook-Pro.local.err”。
    151118 09:25:23 mysqld_使用/usr/local/var/mysql中的数据库安全启动mysqld守护程序
    /usr/local/bin/mysqld_safe:line 129:/usr/local/var/mysql/Robs-MacBook-Pro.local.err:权限被拒绝
    rm:/tmp/mysql.sock:权限被拒绝
    /usr/local/bin/mysqld_safe:line 166:/usr/local/var/mysql/Robs-MacBook-Pro.local.err:权限被拒绝
    151118 09:25:23 pid文件/usr/local/var/mysql/Robs-MacBook-Pro.local.pid中的mysqld_safe mysqld结束
    /usr/local/bin/mysqld_safe:line 129:/usr/local/var/mysql/Robs-MacBook-Pro.local.err:权限被拒绝
    

    授予Robs-MacBook-Pro.local.err和mysql.sock(仍然称为mysql.sock.lock,这有关系吗?)的权限并不能完全解决问题,错误消息现在显示:

    Robs-MacBook-Pro:~ leroyklotz$ mysqld_safe --init-file=/home/mysql-init &
    [1] 747
    Robs-MacBook-Pro:~ leroyklotz$ 151119 09:13:51 mysqld_safe Logging to '/usr/local/var/mysql/Robs-MacBook-Pro.local.err'.
    151119 09:13:51 mysqld_safe Starting mysqld daemon with databases from /usr/local/var/mysql
    rm: /tmp/mysql.sock: Permission denied
    151119 09:13:53 mysqld_safe mysqld from pid file /usr/local/var/mysql/Robs-MacBook-Pro.local.pid ended
    

    不要自己创建/触摸pid文件,它是由守护进程自己创建的,以指示其pid

    在macos上,如果没有my.cnf,mysql应该可以正常运行

    第一件事是查看mysqld日志,网址为
    /usr/local/var/mysql/Robs MacBook Pro.local.err

    奇怪的位置,顺便说一句,默认是在
    /usr/local/mysql/data/.err
    (需要sudo读取),可能是您安装的服务器根本没有启动,并且您有其他守护进程正在运行(例如通过自制安装)


    检查
    ps ax | grep mysql | grep-v grep
    -它应该有两个进程,如果有其他mysql,则两个进程都在
    /usr/local/mysql/bin
    中,如果没有用户调用,这就解释了我最初的怀疑是“root”@“localhost”的localhost部分,'root'@'localhost'它不会将此用户识别为与基本根用户相同的用户(您可能会发现root@myserver在您的服务器用户或类似用户中)。您可以添加“root”@“localhost”或使用通配符,即“root”@%。希望这有帮助!虽然我相信这里的大多数人都愿意提供帮助,但我们确实没有足够的信息来正确解决这个问题。首先,确保您已完成此处的所有步骤:。阿萨姆