Comprender los comandos de MySQL

1. Introducción

mysql es el cliente de línea de comandos para MySQL, que se utiliza para conectarse al servidor MySQL y ejecutar declaraciones SQL.

Admite el uso tanto interactivo como no interactivo. Cuando se utilizan de forma interactiva, los resultados de la consulta se presentan en formato de tabla ASCII. Cuando se utiliza de forma no interactiva (por ejemplo, como filtro), los resultados se muestran en formato delimitado por tabulaciones. El formato de salida se puede cambiar usando las opciones de comando.

formato de comando mysql:

mysql [OPTIONS] DB_NAME

Por ejemplo

mysql -h HOST_NAME -u USER_NAME -p DB_NAME

# 或
mysql --host=HOST_NAME --user=USER_NAME --password DB_NAME

Utilice la opción -p o --password sin especificar una contraseña, en cuyo caso se le pedirá que ingrese la contraseña de forma interactiva.

Después de conectarse exitosamente al servidor, escriba la instrucción SQL que termina en ;o \gy \Gluego presione Entrar para ejecutar la instrucción SQL de forma interactiva. Para salir de una sesión interactiva, escriba el comando salir o salir.

Por supuesto, también puedes especificar la contraseña directamente en la línea de comando. Sin embargo, esto no es seguro porque expondrá la contraseña en el historial de comandos o en la lista de procesos, lo que representa un riesgo de seguridad, por lo que no se recomienda.

# 注意选项与密码之间没有空格
-pPWD

# 或
--password=PWD

También podemos escribir sentencias SQL en archivos de script (archivos por lotes) y ejecutarlos mediante el análisis de MySQL.

mysql DB_NAME < script.sql > output.tab

El puerto predeterminado del servidor MySQL es 3306. Si necesita especificar otro puerto, debe usar la opción -P o --port para especificarlo.

-P PORT_NUM
# 或
--port=PORT_NUM

2. Opciones

Además de las opciones relacionadas utilizadas para conectarse a la base de datos presentadas anteriormente, el comando mysql tiene muchas opciones. Estas son algunas de las opciones más utilizadas.

--help, -?
	显示帮助信息并退出。
--auto-rehash
	启用自动重新哈希,缺省开启。当启用了--auto-rehash选项后,在输入命令时,MySQL客户端会自动为您提数据库、表和列名称的自动补全和提示,使得查询和使用数据库更加方便和高效。
-A, --no-auto-rehash
	禁用自动重新哈希。不对数据库、表与列名重新哈希,因此禁用了数据库、表和列名的自动补全功能,可以提高 mysql 启动速率。
--auto-vertical-output
	当结果集相对于当前窗口太宽时,自动转换水平输出为垂直输出。
-B, --batch
	使用制表符作为列分隔符打印结果,每行占一个新行。 使用此选项,mysql 不使用历史文件。mysql 命令交互过程会将用户的所有输入记录在一个隐藏文件 /root/.mysql_history。每次退出 mysql 交互模式时,会将交互过程中的所有命令操作一次性写入 ~/.mysql_history 隐藏文件中。下次执行 mysql 时,可以使用键盘的向上键获取历史命令。类似于 Shell 获取历史命令。该选项一般用于 Shell 脚本中执行 SQL 语句,命令行模式下需要交互指定 SQL 语句,故不使用该选项。
-N, --skip-column-names
	查询结果不输出列名。
--database, -D DB_NAME
	指定要使用的数据库。这主要在选项文件中有用。
--default-character-set=CHARSET
	设置默认的字符集。
-e, --execute=STATEMENT
	执行指定的 SQL 语句并退出。默认输出格式类似于使用 --batch 生成的格式。
-E, --vertical
	垂直打印输出行(每列值一行)。 如果没有此选项,您可以通过用 \G 终止各个语句来指定垂直输出。
-t, --table
	显示查询结果以表格形式输出。这是交互式使用的默认输出形式,但可用于以批处理模式生成表输出。
-R, --raw
	显示查询结果以原始格式输出。
--show-warnings
	如果有的话,会在每个语句后显示警告。 此选项适用于交互和批处理模式。
--tee=FILE_NAME
	将输出拷贝一份到给定文件。 此选项仅在交互模式下有效。
-v, --verbose
	显示详细的执行信息。
-V, --version
	显示版本信息并退出。

Úselo mysql --helppara ver descripciones más detalladas de las opciones. Por supuesto, también puede consultar el manual de comandos de mysql ( man mysql) o el documento oficial mysql Client Options .

En el modo interactivo de línea de comando, -Ala opción generalmente se usa para no repetir los nombres de la base de datos, las tablas y las columnas para comenzar rápidamente. Las opciones se utilizan a menudo cuando los scripts de shell utilizan mysql para ejecutar sentencias SQL -NBA.

3.comando infantil

mysql envía cada declaración SQL que emite al servidor para su ejecución. También hay un conjunto de comandos que son interpretados por el propio mysql. Para obtener una lista de estos comandos, escriba ayuda o \h en el indicador mysql>.

?         (\?) Synonym for `help'.
clear     (\c) Clear the current input statement.
connect   (\r) Reconnect to the server. Optional arguments are db and host.
delimiter (\d) Set statement delimiter.
edit      (\e) Edit command with $EDITOR.
ego       (\G) Send command to mysql server, display result vertically.
exit      (\q) Exit mysql. Same as quit.
go        (\g) Send command to mysql server.
help      (\h) Display this help.
nopager   (\n) Disable pager, print to stdout.
notee     (\t) Don't write into outfile.
pager     (\P) Set PAGER [to_pager]. Print the query results via PAGER.
print     (\p) Print current command.
prompt    (\R) Change your mysql prompt.
quit      (\q) Quit mysql.
rehash    (\#) Rebuild completion hash.
source    (\.) Execute an SQL script file. Takes a file name as an argument.
status    (\s) Get status information from the server.
system    (\!) Execute a system shell command.
tee       (\T) Set outfile [to_outfile]. Append everything into given outfile.
use       (\u) Use another database. Takes database name as argument.
charset   (\C) Switch to another charset. Might be needed for processing binlog with multi-byte charsets.
warnings  (\W) Show warnings after every statement.
nowarning (\w) Don't show warnings after every statement.
resetconnection(\x) Clean session context.
query_attributes Sets string parameters (name1 value1 name2 value2 ...) for the next query to pick up.
ssl_session_data_print Serializes the current SSL session data to stdout or file.

Si desea ayuda del lado del servidor, ingrese "contenido de ayuda".

Entre los subcomandos anteriores, hay varios subcomandos de uso común que requieren atención.

  • ? y ayuda para ver los subcomandos.
  • ego (\G) puede generar los resultados de la consulta verticalmente, es decir, generar cada columna en una línea separada.
  • use (\u) cambia la base de datos.
  • salir y salir de mysql.

4. Resumen

A través de este artículo, ha aprendido sobre el uso básico, las opciones comunes y los subcomandos de la herramienta de línea de comandos MySQL mysql, como conectarse fácilmente a la base de datos a través de mysql.

A través de la herramienta de línea de comandos MySQL mysql, podemos establecer una conexión con la base de datos de forma interactiva o no interactiva y realizar las operaciones que queramos.


referencias

mysql: el cliente de línea de comandos MySQL

Supongo que te gusta

Origin blog.csdn.net/K346K346/article/details/132070251
Recomendado
Clasificación