首页 > 问答 > 关键词  > mysql最新资讯  > 正文

MySQL怎么连接 全部连接方式汇总

2020-07-13 14:49 · 稿源:数据库干货铺

1. 连接方式

1.1 方式1

/usr/local/mysql5.7/bin/mysql-p

此方法默认采用root@localhost用户登录,

1.2 方式2

/usr/local/mysql5.7/bin/mysql-uroot-p-S/app/data/mysql3307/tmp/mysql.sock

1.3 方式3

/usr/local/mysql5.7/bin/mysql-uroot-p-h127.0.0.1-P3307

此方式的用户和方式 2 的不同,如下

root@localhost 和root@'127.0.0.1'是不同的用户

1.4 方式4

/usr/local/mysql5.7/bin/mysql-uroot-p-hlocalhost-P3307

此方式和方法1 及方法 2 用户相同,如下

1.5 方式5

/usr/local/mysql5.7/bin/mysql-uroot-p-h192.168.56.77-P3307

此方式与方式 3 都是使用root@'%'这个用户,但是查看用户时会所有不同,例如如果在本机操作,则显示本机的ip,如下:

如果在其他机器上查看,则ip为对应机器的IP,如下

2. 免密登录的方式

2.1 修改my.cnf的方式

可以在my.cnf配置文件的[client]标签下增加用户信息处理。但是,该方式默认使用的/etc/my.cnf配置文件下的信息,因此需要调整该目录下的对应标签下的信息

vim/etc/my.cnf/**添加如下信息*/[client]
user="root"password="123456"

此时登录,无需输入密码

且 mysqladmin命令也无需输入密码,如下

/usr/local/mysql5.7/bin/mysqladmin-uroot-S/app/data/mysql3307/tmp/mysql.sockpingmysqldisalive

如果只想指定的命令免密,则可以在对应的标签下添加用户密码信息,例如

vim/etc/my.cnf
/**注释掉[client]下的信息,只添加[mysql]标签*/[root@mda177mysql3307]#vim/etc/my.cnf
#[client]
#user="root"#password="123456"[mysql]
user="root"password="123456"/**使用mysql进行测试*/
/usr/local/mysql5.7/bin/mysql-uroot-S/app/data/mysql3307/tmp/mysql.sock
WelcometotheMySQLmonitor.Commandsendwith;or\g.
YourMySQLconnectionidis18Serverversion:5.7.25-28-logPerconaServer(GPL),Release28,Revisionc335905
Copyright(c)2009-2019PerconaLLCand/oritsaffiliates
Copyright(c)2000,2019,Oracleand/oritsaffiliates.Allrightsreserved.
OracleisaregisteredtrademarkofOracleCorporationand/orits
affiliates.Othernamesmaybetrademarksoftheirrespective
owners.
Type'help;'or'\h'forhelp.Type'\c'toclearthecurrentinputstatement.
mysql>exit
Bye/**使用mysqladmin用户进行测试*/
/usr/local/mysql5.7/bin/mysqladmin-uroot-S/app/data/mysql3307/tmp/mysql.sockpingmysqladmin:connecttoserverat'localhost'failed
error:'Accessdeniedforuser'root'@'localhost'(usingpassword:NO)'

以上即代表mysql命令可免密登录,而mysqladmin不能免密登录。 如果只想mysqladmin免密登录,则在[mysqladmin] 标签下添加信息即可,想所有的都可以免密就在[client]标签下添加,具体的就不再演示了。

2.2 添加在login_path

使用mysql_config_editor 命令添加需要免密登录的用户,如下

/**添加用户*//usr/local/mysql5.7/bin/mysql_config_editorset-Guser1-uroot-p-S/app/data/mysql3307/tmp/mysql.sock
Enterpassword:
/**查看添加的用户信息*//usr/local/mysql5.7/bin/mysql_config_editorprint--all
[user1]
user=root
password=*****socket=/app/data/mysql3307/tmp/mysql.sock

可以发现,密码做了加密,非明文显式。

登录login-path指定

/**指定login-path登录*//usr/local/mysql5.7/bin/mysql--login-path="user1"

注意:

如果密码中含有字母、数字、下划线外的字符,mysql_config_editor set最后输入密码时添加上引号。

配置后的login-path存在~/.mylogin.cnf文件里,此文件为二进制文件。

ll-ah~/.mylogin.cnf
-rw-------1rootroot168Sep1008:46/root/.mylogin.cnf

此方式相对于配置my.cnf稍微安全一点。

本文转载自微信公众号【数据库干货铺】。

举报

  • 相关推荐
  • 大家在看

今日大家都在搜的词:

热文

  • 3 天
  • 7天