如何使用 XAMPP for Windows 访问 MySQL 命令行?
Posted
技术标签:
【中文标题】如何使用 XAMPP for Windows 访问 MySQL 命令行?【英文标题】:How can I access the MySQL command line with XAMPP for Windows? 【发布时间】:2021-11-09 05:06:47 【问题描述】:【问题讨论】:
【参考方案1】:您的 mysql 二进制文件应该位于 XAMPP 文件夹下。查找 /bin 文件夹,您会在周围找到 mysql.exe 客户端。假设它位于 c:\xampp\mysql\bin 中,那么您应该在此文件夹中启动命令提示符。
也就是说,启动“cmd”,然后输入:
cd c:\xampp\mysql\bin
mysql.exe -u root --password
如果你想使用 mysqldump.exe,你也应该在那里找到它。
登录到您的 mysql 服务器,然后开始输入您的命令。
希望对你有帮助...
【讨论】:
这很有帮助。原来 Windows 命令行的确切语法是:“mysql --user=user_name --password=the_password db_name” 也感谢您对 mysqldump 的评论 - 我误以为您是从 mysql 命令行而不是 windows 命令行访问它。 .\mysql -u root(在powershell中使用“.\”表示在当前工作目录中查找可执行文件或二进制文件) 我在 VSCode 中尝试使用 Git Bash 作为我的终端。我必须使用./mysql -u root
(注意mysql前面的点和斜线),否则它不会看到mysql.exe(是的,我已经完成了cd
命令)。【参考方案2】:
在 Mac 上,或者至少在我使用默认安装的 Mac 上,我在以下位置访问它:
/Applications/xampp/xamppfiles/bin/mysql -uroot -p【讨论】:
是的,但我是否刚刚阅读了以下问题:“如何使用 XAMPP for Windows 访问 MySQL 命令行?”..LOL【参考方案3】:对于 Linux:
/opt/lampp/bin/mysql -u root -p
要仅使用“mysql -u root -p”命令,然后将“/opt/lampp/bin”添加到环境变量的 PATH。
【讨论】:
如果没有使用默认设置,mysql dbs 没有密码,那么下面的命令会稍微快一点:/opt/lampp/bin/mysql -uroot
如果没有“-p”,您将立即登录。使用“-p”,然后它会要求输入密码,您需要按回车键才能进入。【参考方案4】:
要在 Windows 中访问 mysql
命令而不手动更改目录,请执行以下操作:
将 MySQL 安装路径附加到现有“变量值”的末尾。示例:
%systemDrive%\xampp\mysql\bin\
或者,如果你愿意的话
c:\xampp\mysql\bin\
最后,打开一个新的命令提示符使这个更改生效。
请注意,MySQL's documentation on Setting Environment Variables 对在 Windows 中处理此问题没什么可说的。
【讨论】:
这行得通。我只需要跳过最后一个反斜杠:c:\xampp\mysql\bin【参考方案5】:-
打开 XAMPP 控制面板。
点击
Shell
。
输入mysql --user=your_user_name --password=your_password
。
【讨论】:
我发现这个解决方案非常适合 Xampp。【参考方案6】:您可以使用 XAMPP for Windows 访问 MySQL 命令行
单击 XAMPP 图标以启动其 cPanel
单击外壳按钮
输入mysql -h localhost -u root
并点击进入
你应该看到所有的命令行以及它们的作用
Setting environment for using XAMPP for Windows.
Your PC c:\xampp
# mysql -h localhost - root
mysql Ver 15.1 Distrib 10.1.19-MariaDB, for Win32 (AMD64)
Copyright (c) 2000, 2016, Oracle, MariaDB Corporation Ab and others.
Usage: mysql [OPTIONS] [database]
Default options are read from the following files in the given order:
C:\WINDOWS\my.ini C:\WINDOWS\my.cnf C:\my.ini C:\my.cnf C:\xampp\mysql\my.ini C:\xampp\mysql\my.cnf C:\xampp\mysql\bin\my.ini C:\xampp\mysql\bin\my.cnf
The following groups are read: mysql client client-server client-mariadb
The following options may be given as the first argument:
--print-defaults Print the program argument list and exit.
--no-defaults Don't read default options from any option file.
--defaults-file=# Only read default options from the given file #.
--defaults-extra-file=# Read this file after the global files are read.
-?, --help Display this help and exit.
-I, --help Synonym for -?
--abort-source-on-error
Abort 'source filename' operations in case of errors
--auto-rehash Enable automatic rehashing. One doesn't need to use
'rehash' to get table and field completion, but startup
and reconnecting may take a longer time. Disable with
--disable-auto-rehash.
(Defaults to on; use --skip-auto-rehash to disable.)
-A, --no-auto-rehash
No automatic rehashing. One has to use 'rehash' to get
table and field completion. This gives a quicker start of
mysql and disables rehashing on reconnect.
--auto-vertical-output
Automatically switch to vertical output mode if the
result is wider than the terminal width.
-B, --batch Don't use history file. Disable interactive behavior.
(Enables --silent.)
--character-sets-dir=name
Directory for character set files.
--column-type-info Display column type information.
-c, --comments Preserve comments. Send comments to the server. The
default is --skip-comments (discard comments), enable
with --comments.
-C, --compress Use compression in server/client protocol.
-#, --debug[=#] This is a non-debug version. Catch this and exit.
--debug-check Check memory and open file usage at exit.
-T, --debug-info Print some debug info at exit.
-D, --database=name Database to use.
--default-character-set=name
Set the default character set.
--delimiter=name Delimiter to be used.
-e, --execute=name Execute command and quit. (Disables --force and history
file.)
-E, --vertical Print the output of a query (rows) vertically.
-f, --force Continue even if we get an SQL error. Sets
abort-source-on-error to 0
-G, --named-commands
Enable named commands. Named commands mean this program's
internal commands; see mysql> help . When enabled, the
named commands can be used from any line of the query,
otherwise only from the first line, before an enter.
Disable with --disable-named-commands. This option is
disabled by default.
-i, --ignore-spaces Ignore space after function names.
--init-command=name SQL Command to execute when connecting to MySQL server.
Will automatically be re-executed when reconnecting.
--local-infile Enable/disable LOAD DATA LOCAL INFILE.
-b, --no-beep Turn off beep on error.
-h, --host=name Connect to host.
-H, --html Produce HTML output.
-X, --xml Produce XML output.
--line-numbers Write line numbers for errors.
(Defaults to on; use --skip-line-numbers to disable.)
-L, --skip-line-numbers
Don't write line number for errors.
-n, --unbuffered Flush buffer after each query.
--column-names Write column names in results.
(Defaults to on; use --skip-column-names to disable.)
-N, --skip-column-names
Don't write column names in results.
--sigint-ignore Ignore SIGINT (CTRL-C).
-o, --one-database Ignore statements except those that occur while the
default database is the one named at the command line.
-p, --password[=name]
Password to use when connecting to server. If password is
not given it's asked from the tty.
-W, --pipe Use named pipes to connect to server.
-P, --port=# Port number to use for connection or 0 for default to, in
order of preference, my.cnf, $MYSQL_TCP_PORT,
/etc/services, built-in default (3306).
--progress-reports Get progress reports for long running commands (like
ALTER TABLE)
(Defaults to on; use --skip-progress-reports to disable.)
--prompt=name Set the mysql prompt to this value.
--protocol=name The protocol to use for connection (tcp, socket, pipe,
memory).
-q, --quick Don't cache result, print it row by row. This may slow
down the server if the output is suspended. Doesn't use
history file.
-r, --raw Write fields without conversion. Used with --batch.
--reconnect Reconnect if the connection is lost. Disable with
--disable-reconnect. This option is enabled by default.
(Defaults to on; use --skip-reconnect to disable.)
-s, --silent Be more silent. Print results with a tab as separator,
each row on new line.
--shared-memory-base-name=name
Base name of shared memory.
-S, --socket=name The socket file to use for connection.
--ssl Enable SSL for connection (automatically enabled with
other flags).
--ssl-ca=name CA file in PEM format (check OpenSSL docs, implies
--ssl).
--ssl-capath=name CA directory (check OpenSSL docs, implies --ssl).
--ssl-cert=name X509 cert in PEM format (implies --ssl).
--ssl-cipher=name SSL cipher to use (implies --ssl).
--ssl-key=name X509 key in PEM format (implies --ssl).
--ssl-crl=name Certificate revocation list (implies --ssl).
--ssl-crlpath=name Certificate revocation list path (implies --ssl).
--ssl-verify-server-cert
Verify server's "Common Name" in its cert against
hostname used when connecting. This option is disabled by
default.
-t, --table Output in table format.
--tee=name Append everything into outfile. See interactive help (\h)
also. Does not work in batch mode. Disable with
--disable-tee. This option is disabled by default.
-u, --user=name User for login if not current user.
-U, --safe-updates Only allow UPDATE and DELETE that uses keys.
-U, --i-am-a-dummy Synonym for option --safe-updates, -U.
-v, --verbose Write more. (-v -v -v gives the table output format).
-V, --version Output version information and exit.
-w, --wait Wait and retry if connection is down.
--connect-timeout=# Number of seconds before connection timeout.
--max-allowed-packet=#
The maximum packet length to send to or receive from
server.
--net-buffer-length=#
The buffer size for TCP/IP and socket communication.
--select-limit=# Automatic limit for SELECT when using --safe-updates.
--max-join-size=# Automatic limit for rows in a join when using
--safe-updates.
--secure-auth Refuse client connecting to server if it uses old
(pre-4.1.1) protocol.
--server-arg=name Send embedded server this as a parameter.
--show-warnings Show warnings after every statement.
--plugin-dir=name Directory for client-side plugins.
--default-auth=name Default authentication client-side plugin to use.
--binary-mode By default, ASCII '\0' is disallowed and '\r\n' is
translated to '\n'. This switch turns off both features,
and also turns off parsing of all clientcommands except
\C and DELIMITER, in non-interactive mode (for input
piped to mysql or loaded using the 'source' command).
This is necessary when processing output from mysqlbinlog
that may contain blobs.
Variables (--variable-name=value)
and boolean options FALSE|TRUE Value (after reading options)
--------------------------------- ----------------------------------------
abort-source-on-error FALSE
auto-rehash FALSE
auto-vertical-output FALSE
character-sets-dir (No default value)
column-type-info FALSE
comments FALSE
compress FALSE
debug-check FALSE
debug-info FALSE
database (No default value)
default-character-set auto
delimiter ;
vertical FALSE
force FALSE
named-commands FALSE
ignore-spaces FALSE
init-command (No default value)
local-infile FALSE
no-beep FALSE
host localhost
html FALSE
xml FALSE
line-numbers TRUE
unbuffered FALSE
column-names TRUE
sigint-ignore FALSE
port 3306
progress-reports TRUE
prompt \N [\d]>
quick FALSE
raw FALSE
reconnect TRUE
shared-memory-base-name (No default value)
socket C:/xampp/mysql/mysql.sock
ssl FALSE
ssl-ca (No default value)
ssl-capath (No default value)
ssl-cert (No default value)
ssl-cipher (No default value)
ssl-key (No default value)
ssl-crl (No default value)
ssl-crlpath (No default value)
ssl-verify-server-cert FALSE
table FALSE
user (No default value)
safe-updates FALSE
i-am-a-dummy FALSE
connect-timeout 0
max-allowed-packet 16777216
net-buffer-length 16384
select-limit 1000
max-join-size 1000000
secure-auth FALSE
show-warnings FALSE
plugin-dir (No default value)
default-auth (No default value)
binary-mode FALSE
【讨论】:
您是否尝试在保存模式下访问控制面板?我做不到! @Adi Prasetyo 问题是如何使用 XAMPP for Windows 访问 MySQL 命令行?它从不包含保存模式,因此您可以通过我如何使用 XAMPP for Windows 在保存模式中访问 MySQL 命令行来重建您的问题?【参考方案7】:阿杰,
您看不到其他表的原因是您需要以“root”身份登录才能看到它们
mysql -h localhost -u root
【讨论】:
【参考方案8】:转到/xampp/mysql/bin
并找到mysql. exe
打开cmd
,将目录改为mysq
后写cmd
mysql -h localhost -u root
【讨论】:
【参考方案9】:Xampp 控制面板 v2.3.1 使用 -h localhost 时出现错误
mysql -h localhost -u root
ERROR 2003 (HY000): Can't connect to MySQL server on 'localhost' (10060)
所以,如果您按原样安装 xampp 并且没有自定义任何 documentroot、serverroot 等,那么以下工作:-
在 xampp 控制面板上启动这两个服务 点击外壳 输入:#mysql -h 127.0.0.1 -u root
效果很好。 以下是日志:-
# mysql -h 127.0.0.1 -u root
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 1
Server version: 5.6.21 MySQL Community Server (GPL)
Copyright (c) 2000, 2014, 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>
【讨论】:
【参考方案10】:要在 Windows 中访问 MySQL,您需要安装 XAMPP。
打开 XAMPP 控制面板并启动 MySQL。现在转到命令提示符并打开
C:\>cd xampp
C:\xampp>cd MySQL
C:\xampp\mysql>cd bin
C:\xampp\mysql\bin>mysql -h localhost -u root
您的数据库现在可以执行了。
【讨论】:
【参考方案11】:我有同样的问题。首先,这就是我所拥有的:
-
赢10
xampp
git bash
我这样做是为了解决我的问题:
-
进入搜索框(PC)
录音
environnement variable
转到“路径”点击“编辑”
添加此"%systemDrive%\xampp\mysql\bin\" C:\xampp\mysql\bin\
点击确定
转到 Git Bash 并右键单击它并打开它并以管理员身份运行
如果您的密码为空,请在您的 Git Bash winpty mysql -u root
上输入此内容
或winpty mysql -u root -p
(如果您有密码)
【讨论】:
【参考方案12】:在终端:
cd C:\xampp\mysql\bin
mysql -h 127.0.0.1 --port=3306 -u root --password
如果密码为空字符串,请按 ENTER。现在你进来了。 您可以列出所有可用的数据库,然后使用以下命令选择一个:
SHOW DATABASES;
USE database_name_here;
SHOW TABLES
DESC table_name_here
SELECT * FROM table_name_here
记住每个 SQL 语句末尾的“;
”。
Windows cmd终端不是很好,不支持Ctrl + C, Ctrl + V (复制、粘贴)快捷方式。如果您打算在终端中大量工作,请考虑安装替代终端 cmd 行,我使用 cmder 终端 - Download Page
【讨论】:
【参考方案13】:run xampp shell to solve connect to root using pw
mysql -h localhost -u root -p
并输入root密码
【讨论】:
【参考方案14】:要通过命令行访问 SQL,我们只需导航到 xampp 文件夹即可。 该文件夹通常位于 c:\ 驱动器上。
-
输入:cd c:\xampp\mysql\bin 然后回车。
输入:
in mysql -u root -p
然后回车。
在新行中输入数据库的密码。
类型:显示数据库;查看您有权访问的所有数据库。
一旦知道要使用的数据库类型(例如 cms_database),键入 use cms_data
或任何其他 db_name,它应该会显示 Database changed
// 附注 使用数据库时不应使用 root 用户。您可能希望创建一个具有特殊权限的单独帐户(例如 cms_user)来限制错误。
做那个类型:
GRANT ALL PRIVILEGES IN cms_database.*
TO 'cms_user'@'localhost'
IDENTITIED BY 'yourpassword'
使用命令仔细检查:
SHOW GRANT FOR 'cms_user'@localhost;
如果您已经有了用户名和要使用的特定数据库,请将步骤 2 更改为此。
mysql -u cms_user -p cms_database
【讨论】:
【参考方案15】:对于窗户
cd\xampp\mysql\bin
mysql -u root -p
linux打开mysql的简单命令:
sudo /opt/lampp/bin/mysql
【讨论】:
【参考方案16】:进入MySQL的命令行界面,我发现是这样的:
C:\xampp\mysql\bin\mysql -u root
【讨论】:
以上是关于如何使用 XAMPP for Windows 访问 MySQL 命令行?的主要内容,如果未能解决你的问题,请参考以下文章
如何使用 XAMPP for Windows 访问 MySQL 命令行?
如何从 Windows 7 pc 访问 Mac Osx 上的 localhost XAMPP?
在 XAMPP for Windows 中升级 PHP 5.4.0?