用户'ODBC'@'localhost'的访问被拒绝<使用密码:=“”yes =“”> </using>

时间:2012-08-23 01:41:41

标签: mysql

我收到一个错误: mysqladmin.exe: connect to server at 'localhost' failed error: 'Access denied for user 'ODBC'@'localhost' (using password: YES)'

我尝试授予权限

mysqladmin.exe grant all ON *.* TO 'myuser'@'localhost'

我正在尝试创建一个数据库:

CD C:\Program Files\MySQL\MySQL Server 5.5\bin
mysqladmin.exe create database comersus -p

我刚刚安装了MySQL 5.5.27.2 我创建了一个名为myuser的用户 我在XP Pro sp3中工作

请告诉我正确的命令行 (我想我需要先批准) 创建数据库文件。

4 个答案:

答案 0 :(得分:13)

尝试使用以下选项运行mysql命令:

C:> mysql -u root

这指定连接时“root”MySQL用户。

因为您没有指定任何用户,所以默认为“匿名” (未命名)用户。在Windows上,由于某种原因,用户名设置为“ODBC” 我不知道。

阅读有关连接服务器的this页面(本教程的一部分)。

请阅读以下链接中的docs部分,了解详情 比你想象的可能的用户和特权。

答案 1 :(得分:1)

我能够创建数据库,授予权限和刷新权限以激活批处理文件中的新权限:

启动MySQLrun.bat

    @echo off
    :: I had to use the root user because the user I created didn't have any authority 
    set user=root
    ::set user=MyUser
    :: When I first installed MySQL I set a password
    set password=MyPassword
    set host=localhost

    CD C:\Program Files\MySQL\MySQL Server 5.5\bin
    :: Create a database file
    :: The log will be in C:\Program Files\MySQL\MySQL Server 5.5\bin

    mysql  -h %host% -u %user% -p%password% < c:\Dnload\MySQLCommands.sql --tee=Run.log --comments --debug-info --verbose
    cmd

MySQLrun.bat的结束

bat文件运行MySQLCommands.sql文件中的命令:

启动MySQLCommands.sql

    drop database if exists MyDatabaseFileName;
    CREATE DATABASE MyDatabaseFileName;
    # An example of how to GRANT ALL privileges to a user 
    #grant all ON mydatabasefilename.* TO 'Myuser'@localhost identified by 'MyPassword';
    # GRANT INSERT, DELETE, UPDATE, SELECT ON databasename.* TO ‘username’@'localhost’   IDENTIFIED BY ‘password’;
    # To activate the new permissions, issue the following command:
    FLUSH PRIVILEGES;
    #  How to log in to a specific database on a MySQL server:
show grants for 'MyUser'@'localhost' 

MySQLCommands.sql的结束

请注意:所有用户名,数据库名称和密码都区分大小写。

创建数据库的方法有很多种。这只是其中之一。

答案 2 :(得分:1)

我的案子是一个愚蠢的错误我打字 mysql u -jim -p

答案 3 :(得分:1)

我遇到了同样的问题并找到了我的解决方案。

转到路径MySQL / data。在此文件夹下检查(.err)ERR文件。 可能会生成如下临时密码。

[注意]为root @ localhost生成临时密码:_yJU = h0P!E&lt; 0

希望它有所帮助。