从Shell提示符访问MySQL服务器(命令行)

时间:2020-01-09 10:38:49  来源:igfitidea点击:

如何从shell提示符(命令行)访问MySQL服务器?

MySQL软件包括mysql客户端。
它是mysqld(基于SQL的关系数据库服务器)的基于文本的客户端。
它可以交互和非交互模式工作。

mysql客户端语法

mysql -u {mysql-user} -p {mysql-password} -h {mysql-server}

其中:

  • -u {mysql-user}:指定MySQL用户名。仅在连接到本地系统时使用root。
  • -p {mysql-password}:指定密码,连接到数据库服务器时使用指定的密码。如果未提供密码,则会以交互方式要求输入密码。
  • -h {mysql-server}:连接到指定的主机(远程或本地)

例如,远程连接到名为mysql10.theitroad.com的MySQL服务器和用户Hyman:

$ mysql -u Hyman -h mysql10.theitroad.com -p

输出示例:

Enter password:
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 5 to server version: 4.1.15-Debian_1-log

Type 'help;' or '\h' for help. Type '\c' to clear the buffer.

mysql>

您可以在mysql>提示符下执行sql语句。
在这个例子中,您将列出来自演示数据库的表,然后运行。

USE demo;
SHOW TABLES;

会话示例:

mysql -u root -p
Enter password: 
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 31855130
Server version: 5.0.77 Source distribution

Type 'help;' or '\h' for help. Type '\c' to clear the buffer.

mysql> use nqod;
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A

Database changed
mysql> show tables;
+----------------+
| Tables_in_nqod |
+----------------+
| quotes         | 
| quotes_meta    | 
+----------------+
2 rows in set (0.00 sec)

mysql> \q
Bye

输入SQL语句后,以;结尾然后按[Enter]键。
要退出,请输入quit或\ q:

quit

或者

\q

会话示例:

mysql -u root -p
Enter password: 
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 31853999
Server version: 5.0.77 Source distribution

Type 'help;' or '\h' for help. Type '\c' to clear the buffer.

mysql> quit
Bye

批处理模式

您可以在脚本文件(批处理文件)中执行SQL语句,如下所示:

mysql database_name < input.script.sql > output.file
mysql -u user -p'password' database_name < input.script.sql > output.file