无法通过命令连接到mysql数据库
Posted
技术标签:
【中文标题】无法通过命令连接到mysql数据库【英文标题】:Can't connect to mysql database via command 【发布时间】:2018-04-12 19:03:45 【问题描述】:也许我只是遗漏了一些非常明显的东西,但我无法以某种方式连接到安装在本地计算机上的 mysql 数据库。当我打开 mysql.exe 时,它说我已连接到 MariaDB 和一个 ID。但是当我尝试访问某个数据库时,我得到:“ERROR 1044 (42000): Access denied for user ''@'localhost' to database ...”
当我检查状态时,它说我以具有我的计算机名称@localhost 的用户身份连接。
希望有人可以提供帮助。 :)
【问题讨论】:
first' How to connect with command line ?
second` 通过命令行连接数据库的正确方法是在xampp上获取mysql->bin的路径并在命令行start in
你的路径上复制路径并打开命令行connect with database
mysql -u your username
-p your password
如果没有密码就不要写东西
我正在使用 C:\xampp\mysql\bin 中的 mysql.exe 这是我得到的:image.ibb.co/mXWe2b/cantlogin.jpg
【参考方案1】:
直接连接到名为 iluminati 的 db 的示例:
tenasimi@SANTRALSUM-05 c:\xampp
# mysql -u root -p iluminati
Enter password: *
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 806
Server version: 5.6.24 MySQL Community Server (GPL)
Copyright (c) 2000, 2015, Oracle and/or its affiliates. All rights reserved.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
mysql> status;
--------------
mysql Ver 14.14 Distrib 5.6.24, for Win32 (x86)
Connection id: 806
Current database: iluminati
Current user: root@localhost
SSL: Not in use
Using delimiter: ;
Server version: 5.6.24 MySQL Community Server (GPL)
Protocol version: 10
Connection: localhost via TCP/IP
Server characterset: latin1
Db characterset: latin1
Client characterset: cp866
Conn. characterset: cp866
TCP port: 3306
Uptime: 1 day 2 hours 4 min 58 sec
Threads: 1 Questions: 2476 Slow queries: 0 Opens: 78 Flush tables: 1 Open
ables: 71 Queries per second avg: 0.026
--------------
mysql> show tables;
+---------------------+
| Tables_in_iluminati |
+---------------------+
| dutypersons |
| persons |
| products |
+---------------------+
3 rows in set (0.00 sec)
mysql> exit;
Bye
【讨论】:
【参考方案2】:MariaDB 是 MySQL 的“替代品”,因此名称混乱。 (这不是问题,只是混淆。)(MySQL 和 MariaDB 之间存在细微差别,但您离它们还很远。)
当您安装 XAMPP 时,为 MariaDB 建立了一个名为“root”的用户。也许它要求输入密码?如果您还没有GRANTed
任何其他“用户”访问数据库,那么“root”就是要使用的“用户”。
命令行工具mysql
也应该可用。但它也需要有效的用户名和密码:
mysql -u root -- if no password
mysql -u root -p -- it will then prompt for the password
如果您从另一台机器连接,则需要更多参数并且需要通过GRANT
语句的@...
部分从该机器获得GRANTed
访问权限。 p>
【讨论】:
【参考方案3】:我猜 xampp 会以某种方式阻止使用 mysql.exe 进行登录或其他用途。当我从 xampp 控制面板使用 shell 时,一切正常。但我不确定。
【讨论】:
以上是关于无法通过命令连接到mysql数据库的主要内容,如果未能解决你的问题,请参考以下文章
无法通过 DataGrip 应用程序连接到 MySQL docker 实例
无法通过DataGrip应用程序连接到MySQL docker实例
无法使用 MySQL 连接器/ODBC 将 Access DB 连接到 ODBC DSN
无法通过 Workbench 连接到 RDS MySQL 数据库