mysql -u root -p 等这些常用的参数

本文详细介绍了MySQL命令行工具的各种参数及其用法,包括连接设置、输出格式调整、安全选项等,帮助用户更高效地使用MySQL。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

mysql -u root -p 等这些常用的参数

一,mysql命令行参数


Usage: mysql [OPTIONS] [database]   //命令方式   
-?, --help          //显示帮助信息并退出   
-I, --help          //显示帮助信息并退出   
--auto-rehash       //自动补全功能,就像linux里面,按Tab键出提示差不多,下面有例子   
  
-A, --no-auto-rehash  //默认状态是没有自动补全功能的。-A就是不要自动补全功能   
-B, --batch         //ysql不使用历史文件,禁用交互   
(Enables --silent)   
--character-sets-dir=name   //字体集的安装目录                       
--default-character-set=name    //设置数据库的默认字符集   
-C, --compress      //在客户端和服务器端传递信息时使用压缩   
-#, --debug[=#]     //bug调用功能   
-D, --database=name //使用哪个数据库   
--delimiter=name    //mysql默认命令结束符是分号,下面有例子   
-e, --execute=name  //执行mysql的sql语句   
-E, --vertical      //垂直打印查询输出   
-f, --force         //如果有错误跳过去,继续执行下面的   
-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.*/  
-g, --no-named-commands   
/*Named commands are disabled. Use \* form only, or use  
named commands only in the beginning of a line ending  
with a semicolon (;) Since version 10.9 the client now  
starts with this option ENABLED by default! Disable with  
'-G'. Long format commands still work from the first  
line. WARNING: option deprecated; use  
--disable-named-commands instead.*/  
-i, --ignore-spaces //忽视函数名后面的空格.   
--local-infile      //启动/禁用 LOAD DATA LOCAL INFILE.   
-b, --no-beep       //sql错误时,禁止嘟的一声   
-h, --host=name     //设置连接的服务器名或者Ip   
-H, --html          //以html的方式输出   
-X, --xml           //以xml的方式输出   
--line-numbers      //显示错误的行号   
-L, --skip-line-numbers  //忽略错误的行号   
-n, --unbuffered    //每执行一次sql后,刷新缓存   
--column-names      //查寻时显示列信息,默认是加上的   
-N, --skip-column-names  //不显示列信息   
-O, --set-variable=name  //设置变量用法是--set-variable=var_name=var_value   
--sigint-ignore     //忽视SIGINT符号(登录退出时Control-C的结果)   
-o, --one-database  //忽视除了为命令行中命名的默认数据库的语句。可以帮跳过日志中的其它数据库的更新。   
--pager[=name]      //使用分页器来显示查询输出,这个要在linux可以用more,less等。   
--no-pager          //不使用分页器来显示查询输出。   
-p, --password[=name] //输入密码   
-P, --port=#        //设置端口   
--prompt=name       //设置mysql提示符   
--protocol=name     //使用什么协议   
-q, --quick         //不缓存查询的结果,顺序打印每一行。如果输出被挂起,服务器会慢下来,mysql不使用历史文件。   
-r, --raw           //写列的值而不转义转换。通常结合--batch选项使用。   
--reconnect         //如果与服务器之间的连接断开,自动尝试重新连接。禁止重新连接,使用--disable-reconnect。   
-s, --silent        //一行一行输出,中间有tab分隔   
-S, --socket=name   //连接服务器的sockey文件   
--ssl               //激活ssl连接,不激活--skip-ssl   
--ssl-ca=name       //CA证书   
--ssl-capath=name   //CA路径   
--ssl-cert=name     //X509 证书   
--ssl-cipher=name   //SSL cipher to use (implies --ssl).   
--ssl-key=name      //X509 密钥名   
--ssl-verify-server-cert //连接时审核服务器的证书   
-t, --table         //以表格的形势输出   
--tee=name          //将输出拷贝添加到给定的文件中,禁时用--disable-tee   
--no-tee            //根--disable-tee功能一样   
-u, --user=name     //用户名   
-U, --safe-updates  //Only allow UPDATE and DELETE that uses keys.   
-U, --i-am-a-dummy  //Synonym for option --safe-updates, -U.   
-v, --verbose       //输出mysql执行的语句   
-V, --version       //版本信息   
-w, --wait          //服务器down后,等待到重起的时间   
--connect_timeout=# //连接前要等待的时间   
--max_allowed_packet=# //服务器接收/发送包的最大长度   
--net_buffer_length=# //TCP / IP和套接字通信缓冲区大小。   
--select_limit=#    //使用--safe-updates时SELECT语句的自动限制   
--max_join_size=#   //使用--safe-updates时联接中的行的自动限制   
--secure-auth       //拒绝用(pre-4.1.1)的方式连接到数据库   
--server-arg=name   //Send embedded server this as a parameter.   
--show-warnings     //显示警告

登录 MySQL 服务器时,`mysql -u root -p` 和 `mysql -h 127.0.0.1 -u root -p` 或者 `mysql -h localhost -u root -p` 都是非常常见的命令组合,它们的作用略有差异,以下是详细解释: --- ### **1. mysql -u root -p** 这条是最基本、最常见的登录 MySQL 命令: - 它表示以 `root` 用户身份尝试连接本地的 MySQL 实例。 - 默认情况下会自动识别为通过 `localhost` 连接,并使用默认端口 (通常是 3306)。 - 执行完此命令后,系统会让你手动输入密码(出于安全考虑)。 **特点:** - 使用 socket 文件连接到本地 MySQL 服务实例,而不是 TCP/IP 方式。 - 更加高效,在某些配置下性能更高。 #### 示例: ``` $ mysql -u root -p Enter password: ********* Welcome to the MySQL monitor... ``` --- ### **2. mysql -h 127.0.0.1 -u root -p 和 mysql -h localhost -u root -p** 这两种方式都指定了 `-h` 参数用于明确主机地址: - **`mysql -h 127.0.0.1 -u root -p`**: 强制通过 IP 地址 (`127.0.0.1`) 表示本机,并采用 TCP/IP 协议进行通信。 - **`mysql -h localhost -u root -p`**: 类似于上一条命令,但是这里的 `localhost` 可能会被解析为基于 Unix Socket 的连接(取决于操作系统和 MySQL 设置)。如果是 Windows,则始终是 TCP/IP。 **区别总结:** | 特性 | `mysql -u root -p` | `mysql -h 127.0.0.1 -u root -p` | |------------------|---------------------------------------|-------------------------------------------| | 主机指定 | 默认值 | 明确指向 `127.0.0.1` | | 连接协议 | Socket 文件 | TCP/IP | 通常来说,如果你在调试过程中遇到权限问题,比如无法从远程客户端访问 MySQL 数据库时,可以通过强制指定 `-h 127.0.0.1` 来确认是不是因为绑定到了特定地址而导致的问题。 --- ### 小贴士 有时由于安全策略或其他原因导致只允许一种类型的连接方式,此时就需要选择对应的命令来进行测试了。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值