文章目录
- 1.1 客户端工具mysql如何安装
- 1.2 客户端工具mysql有啥作用
- 1.3 客户端工具mysql读取文件
- 1.4 客户端工具mysql常用参数
1.1 客户端工具mysql如何安装
当你安装好了MySQL软件包(MySQL Community Server)后,就会包含mysql这个客户端工具,
你可以理解成是MySQL数据库自带的(非自带的不一定说就是第三方的)。
1.2 客户端工具mysql有啥作用
01:连接到MySQL服务端进行交互式操作,例如:
[root@vm7-92 ~]# mysql -uroot -p -S /data/mysql/3306/run/mysql.sock
mysql>
mysql>
mysql> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| binbin |
| chenliang |
| mysql |
| performance_schema |
| sys |
+--------------------+
6 rows in set (0.00 sec)
02:连接到MySQL服务端进行非交互操作,例如:
[root@vm7-92 ~]# mysql -uroot -p -S /data/mysql/3306/run/mysql.sock -e "show databases;"
Enter password:
+--------------------+
| Database |
+--------------------+
| information_schema |
| binbin |
| chenliang |
| mysql |
| performance_schema |
| sys |
+--------------------+
1.3 客户端工具mysql读取文件
这里不是说mysql读取某个文件,然后从文件中导入数据,我都还没有连接mysql实例,我导入啥数据。
Default options are read from the following files in the given order:
/etc/my.cnf /etc/mysql/my.cnf /usr/local/mysql/etc/my.cnf ~/.my.cnf
The following groups are read: mysql client
找配置文件(my.cnf)的先后顺序依次为:/etc/my.cnf /etc/mysql/my.cnf /usr/local/mysql/etc/my.cnf ~/.my.cnf
找到配置文件(my.cnf)后读取[mysql]选项或者[client]选项下面的相关参数,到底是以[mysql]选项下面的相关参数为准还是以[client]选项下面的相关参数为准。这个就看:有没有同时存在。若同时存在,哪个在上面/前面,哪个在下面/后面了。
我当前的环境 我当前mysql 3306实例的部署位置
my.cnf所在位置:/data/mysql/3306/etc/my.cnf
socket所在位置:/data/mysql/3306/run/mysql.sock
需求 我想用root@localhost用户登录,但我不想在命令行敲:mysql -uroot -p -S /data/mysql/3306/run/mysql.sock
- 第一种方法:通过/etc/my.cnf文件
#### 创建/etc/my.cnf文件,其结果如下所示
[root@vm7-92 ~]#
[root@vm7-92 ~]# cat /etc/my.cnf
[mysql]
user=root
password=密码
socket=/data/mysql/3306/run/mysql.sock
#### 直接登录
[root@vm7-92 ~]# mysql
mysql>
mysql>
mysql> select current_user();
+----------------+
| current_user() |
+----------------+
| root@localhost |
+----------------+
1 row in set (0.00 sec)
- 第二种方法:通过–defaults-file参数
#### 创建/tmp/a文件,其内容如下所示
[root@vm7-92 ~]# cat /tmp/a
[mysql]
user=root
password=密码
socket=/data/mysql/3306/run/mysql.sock
#### mysql用--defaults-file去指定/tmp/a文件
[root@vm7-92 ~]# mysql --defaults-file=/tmp/a
mysql>
mysql>
mysql> select current_user();
+----------------+
| current_user() |
+----------------+
| root@localhost |
+----------------+
1 row in set (0.00 sec)
- 第三种方法:通过我mysql实例真正的my.cnf
#### 其结果的如下所示
[root@vm7-92 ~]#
[root@vm7-92 ~]# head -5 /data/mysql/3306/etc/my.cnf
[mysql]
user=root
password=密码
socket=/data/mysql/3306/run/mysql.sock
#### mysql用--defaults-file参数来指定
[root@vm7-92 ~]#
[root@vm7-92 ~]# mysql --defaults-file=/data/mysql/3306/etc/my.cnf
mysql>
mysql>
mysql> select current_user();
+----------------+
| current_user() |
+----------------+
| root@localhost |
+----------------+
1 row in set (0.00 sec)
1.4 客户端工具mysql常用参数
获取mysql工具的帮助信息和版本信息
-I
# 等于--help参数,例如:mysql -I
-V
# 等于--version参数,查看mysql这个客户端工具的版本
连接mysql实例的相关参数
-u
# 等于--user参数,指定连接mysql实例中帐户的用户名。
-p
# 等于--password参数,指定连接用户的密码。
-h
# 等于--host参数,指定连接mysql实例的主机名(IP),这个得看mysql实例中帐户中的主机段
-S
# 等于--socket参数,用于指定mysql实例的socket文件,这个得看mysql实例中帐户的主机段(localhost)
-P
# 等于--port参数,指定mysql实例的端口号