mysql - 使用 CMD 导入 SQL 数据库 - 唯一访问被拒绝错误

标签 mysql database cmd mariadb

我一直在尝试使用 CMD 导入数据库,但它不起作用。

我可以连接到数据库并使用如下命令:

SHOW_DATABASES; 

但每当我尝试导入我的数据库时,它只会给我错误“访问被拒绝”

这是我正在使用的命令:

C:\xampp\mysql\bin>mysql -u {username} -p {database_name} < {filepath to .sql} 

我已经尝试在 phpMyAdmin 中创建一个新用户并以这种方式导入数据库,但我仍然遇到同样的错误...

我看不出问题所在,看来我的用户名和 ps 是正确的,我正在连接到数据库,我拥有 db 用户帐户的所有权限并且我的命令行是正确的。

关于问题可能是什么的任何想法。

最后说明 - 当我连接到数据库时,它说我已连接到 MariaDB:

Welcome to the MariaDB monitor.  Commands end with ; or \g.
Your MariaDB connection id is 184
Server version: 10.1.24-MariaDB mariadb.org binary distribution

Copyright (c) 2000, 2017, Oracle, MariaDB Corporation Ab and others.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

最佳答案

尝试运行这个命令:

GRANT ALL PRIVILEGES ON databaseName.* TO 'userName'@'%' WITH GRANT OPTION;

这将为您的用户提供所有权限。但请注意,'%' 表示一切,因此任何连接都可以连接。 'localhost' 可能是一个更安全的选择。对于用户帐户,最好创建具有​​特定于其任务的权限的帐户,例如仅用于导出和导入数据的导出/导入用户。但是,如果这是 100% 的本地开发,那就没那么重要了 - 但请记住,在生产服务器上这是一个风险。

之后您应该可以使用以下内容:

导入/导出的命令不是mysql这是mysqldump -

您想导出的内容:

mysqldump -uuserName -p databaseName > file.sql

导入:

mysqldump -uuserName -p databaseName < file.sql

或者您可以通过 mysql 访问并使用 source像这样:

mysql -uuser -p
source /path/to/sql.sql

关于mysql - 使用 CMD 导入 SQL 数据库 - 唯一访问被拒绝错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45164127/

相关文章:

javascript - Firefox 附加组件无法通过 cmd 启动带参数的 iexplore URL

mysql - 有没有办法简化这个查询?

java - 如何为我的 java 项目创建可安装的 msi 包?

database - Postgresql 执行自定义函数时出现错误 42883

php - 使用复选框显示数据库中的值问题

cmd - 使用 Windows findstr 列出不包含字符串的文件

java - 如何从终端执行 .jar 文件而不指定其名称

mysql - 避免事务中的竞争条件

mysql - select 子查询中的 UNION 问题

php - 如何从特定的 sql 查询中返回 json?