1.检测mysql数据库是否安装

yum list installed | grep mysql
mysql-libs.i686       5.1.73-8.el6_8      @base

2.安装mysql-server(如果使用service 运行mysqld status,提示mysqld:unrecongnized service,是因为没有安装server)

yum install mysql-server

再次运行yum list installed | grep mysql后

mysql.i686            5.1.73-8.el6_8      @base
mysql-libs.i686       5.1.73-8.el6_8      @base
mysql-server.i686     5.1.73-8.el6_8      @base

3.数据库相关命令

数据库运行状态

service mysqld status

查看mysqld对应的进程

ps -e | grep mysqld

进入mysql命令行

mysql -h 23.106.138.174 -p 26056 -uroot -p

进入本地mysql命令行

mysql -uroot -p

切换mysql库

use mysql;
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

更改表

查看user表中的user='root'对应的数据,根据实际情况更改表信息

select host ,user from user where user='root';
#如果上面查询到有信息,但host为localhost或其他值,就需要根据实际需求更新表信息
update user set host ='%' where user='root';
如果想任何的IP地址都可以使用root用户远程登陆(注意,如果上面的查询语句,查询出来多条,就需要做一些处理,比如多加一个条件,
如,where user='root' and host='localhost'或先删除其他人的记录还保存一条user='root'的记录)

更改权限

使用grant all privileges on 来更改用户对应某些库的远程权限

grant all privileges on 库名.表名 to '用户名'@'IP地址' identified by '密码' with grant option;
flush privileges;
#库名:要远程访问的数据库名称,所有的数据库使用"*";
#表名:要远程访问的数据库下的表的名称,所有的表使用"*";
#用户名:要赋给远程访问权限的用户名称;
#IP地址:可以远程访问的电脑的IP地址,所有的地址使用"%";
#密码:要赋给远程访问权限的用户对应使用的密码;

show命令查看mysql数据库信息

show databases;#查询所有数据库
show tables;#查询某一数据库中所有的数据库表
show variables;#显示系统变量名称和值(show variables like 'port';)
show warnings;#显示最后一条执行的SQL语句所产生的错误、警告等信息
show status;#显示系统特定资源的状态

查看当前数据库相关信息

status;

查看数据库的表信息

select * from information_schema.tables where table_schema='databasename';

查看某表的具体信息

select * from information_schema.tables where table_name='table_name';

查看数据库的所有用户信息

select distinct concat('user:''',user,'''@''',host,''';') as query from mysql.user;


show grants for 'root'@'localhost';
#查看某个具体用户的权限

show variables like '%max_connections%';
#查看数据库的最大连接数

show status like 'Threads%';
+-------------------+-------+
| Variable_name     | Value |
+-------------------+-------+
| Threads_cached    | 0     |
| Threads_connected | 1     |
| Threads_created   | 223   |
| Threads_running   | 1     |
+-------------------+-------+
#查看数据库当前的连接数,并发数;
#cached:当前线程缓冲池中有多少空闲线程
#connected:代表丹铅已建立的连接数量,因为一个连接就需要一个线程,所以可以看成当前被使用的线程数
#created:代表从最近一次服务启动已创建线程的数量
#running:代表(非睡眠状态的)线程数。并不代表正在使用的线程数,有时候连接已经建立,但连接处于sleep状态,对应线程也是sleep状态。


show variables like '%datadir%';
#查看数据文件存放路径

show privileges;
#查看mysql支持的不同权限;

user表中的host列
%            匹配所有主机
localhost    localhost不会被解析IP地址,直接通过UNIXsocket连接 
123.0.0.1    会通过TCP/IP协议连接,并且只能在本机访问
::1          ::1就是兼容支持ipv6的,表示ipv4的127.0.0.1