Mysql一些管理类的指令

1、查看当前用户

1 select user();

2、查看当前用户的授权

1  show grants;

3、查看当前所在数据库

1 select database();

上图显示当前没有选择数据库。

 4、查看共有哪些数据库(显示所有的数据库)

1 show databases;

5、查看数据库使用的端口

1 show variables  like 'port';

6、查看有哪些用户

1 SELECT DISTINCT CONCAT('User: ''',user,'''@''',host,''';') AS query FROM mysql.user;

 上面显示的是所有的可以登录的用户,用户后面对应的是这个用户必须在这个host主机上才能登录这个数据库。

登录测试:

 我们在192.168.61.140这台机器上进行登录,登录命令如下:

1 mysql -uzhangmeng -h 192.168.61.140 -p

执行后提示输入密码,输入后就可以登录成功,但是由于权限问题,看不到所有的数据库,如下:

 只能看到一个数据库information_schema。

还在这台机器上,但是我们输入另一个host去连接,报错如下:

我们切换到另一台机器上,继续用zhangmeng这个用户名进行登录,如下:

报错如下:

即使我们-h输入了192.168.61.140,但是报错信息显示zhangmeng@192.168.61.135未授权。

这个登录命令里面的-h指定的是我们要登录的机器的ip,它们授权表里面的   用户名@ip  里面的ip没有关系。 授权表里面的ip是说,只允许这台ip机器登录,也就是mysql客户端进行登录时会把执行mysql命令的机器的ip带过去。

不指定-h的话默认登录目标机器为localhost。

我们在192.168.61.135这台机器上换另一个用户名登录,如下:

 可以看到登录成功了,我们执行mysql命令所在的机器是192.168.61.135,-h指定的目标机器的ip是192.168.61.140。 最终需要检验的授权是jgyw@192.168.61.135是否有登录权限,这个权限在上面的表中看到是有的,所以登录可以成功。

在本机登录时执行sudo mysql,这时候默认以root用户登录本机的mysql数据库,而且没有密码,这时候权限也是最高的。root用户是安装数据库时默认加上的。

以root用户登录是可以修改所有用户的密码的。

查看有哪些用户也可以使用 use mysql;  select * from userG; 方式,这样会把mysql这个库中的user表中的信息全部打印出来。

7、创建数据库

1 CREATE DATABASE 数据库名;
原文地址:https://www.cnblogs.com/wanmeishenghuo/p/13610923.html