本文总结了在命令行下连接mysql的常用命令
在本博客中,"mysql"是一个系列文章,这些文章主要对mysql/mariadb的常用知识点进行了总结,每一篇博客总结的知识点有所不同,具体内容可参考mysql文章列表。
mysql文章列表直达链接:mysql知识点总结
如下命令表示使用root用户(mysql的root用户,非系统root用户)连接到mysql数据库,-u表示指定用户,-p表示将会提示输入密码,-u与root用户名之间的空格可省略。
MySQL
mysql -u root -p
1
mysql -u root -p
如下命令表示使用root用户连接数据库,并且直接以明文的方式指定密码,注意,下例中的密码为123123,密码与-p选项之间不能存在空格。
MySQL
mysql -u root -p123123
1
mysql -u root -p123123
在连接mysql时,可以直接指定将要登录的具体的数据库,使用-D指定数据库名称,如下命令表示连接mysql数据库后直接使用test数据库。
MySQL
mysql -u root -D test -p123123
1
mysql -u root -D test -p123123
在本地连接到mysql时,可以指定通过哪个套接字文件连接到数据库,通过-S指定套接字位置。
MySQL
mysql -u root -p -S /var/lib/mysql/mysql.sock
1
mysql -u root -p -S /var/lib/mysql/mysql.sock
在连接到mysql时,可以指定要连接到远程的哪一台主机的mysql上,也可以指定端口,-h指定mysql主机,-P大写,指定mysql服务对应的端口,连接的前提是已经授权当前客户端的IP地址能够连接到数据库。
MySQL
mysql -u root -p -h 192.168.1.103 -P 3306
1
mysql -u root -p -h 192.168.1.103 -P 3306
连接数据库的同时执行对应命令,并且返回命令对应的结果,并不会进入mysql提示符。
示例如下,表示连接数据库的同时,执行-e选项后面跟随的sql语句,并且返回语句执行的结果。
MySQL
mysql -u root -p123123 -e 'use mysql; select user,host,password from user;'
1
mysql -u root -p123123 -e 'use mysql; select user,host,password from user;'
MySQL
mysql -uroot -p123123 -e 'create database if not exists testdb; show databases;'
1
mysql -uroot -p123123 -e 'create database if not exists testdb; show databases;'
连接数据库的常用选项
--host=host_name, -h host_name:服务端地址;
--user=user_name, -u user_name:用户名;
--port=port_num, -P port_num:服务端端口;
--socket=path, -S path
--database=db_name, -D db_name:
--compress, -C:数据压缩传输
--execute=statement, -e statement:非交互模式执行SQL语句;
--vertical, -E:查询结果纵向显示;
--protocol={TCP|SOCKET|PIPE|MEMORY}: