mysql常用命令

增加新用户

格式:grant 权限 on 数据库.* to 用户名@登录主机 identified by "密码"

如,增加一个用户user1密码为password1,让其可以在本机上登录, 并对所有数据库有查询、插入、修改、删除的权限。
首先用以root用户连入mysql,然后键入以下命令:
grant select,insert,update,delete on *.* to 'user1'@'localhost' Identified by "password1";

如果希望该用户能够在任何机器上登陆mysql,则将localhost改为"%"。
grant all privileges on *.* to 'alex'@'%' identified by "alex";

刷新权限
FLUSH PRIVILEGES;

查询用户权限

show grants for alex@'%';

字符集问题

查看默认编码格式:
show variables like "%char%";
设置编码格式:
SET character_set_client='utf8';
SET character_set_connection='utf8';
SET character_set_server='utf8';
查看数据库test的编码格式:
show create database test;
设置数据库test的编码格式:
ALTER DATABASE `test` DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;
查看数据表testTable的编码格式:
show create table testTable;
设置数据表testTable的编码格式:
ALTER TABLE `testTable` DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;  

禁止用户远程登陆

use mysql;
update user set host = "localhost" where user = "root" and host = "%";
flush privileges;

查看错误日志位置

show variables like "log_error";

版本升级

https://www.rootusers.com/how-to-upgrade-mariadb-version-10-1-to-10-3/

数据库启动命令汇总

1、使用mysqld启动、关闭MySQL服务
mysqld是MySQL的守护进程,我们可以用mysqld来启动、关闭MySQL服务。

2、使用mysqld_safe启动、关闭MySQL服务
mysqld_safe是一个脚本,一个非常安全的启动、关闭MySQL服务的脚本。它实际上也是调用mysqld来启动、关闭MySQL服务。

3、使用service 启动、关闭MySQL服务
service mysql stop

4、使用/etc/init.d/mysql启动、关闭MySQL服务
/etc/init.d/mysql也是一个脚本,它调用mysqld_safe脚本来启动MySQL服务。

资源限制

对单个账户可以设置的资源限制有
1. 每小时查询次数
2. 每小时更新次数
3. 每小时连接次数
4. 同时在线的连接个数
对应:
GRANT OPTION
| MAX_QUERIES_PER_HOUR count
| MAX_UPDATES_PER_HOUR count
| MAX_CONNECTIONS_PER_HOUR count
| MAX_USER_CONNECTIONS count
举例:

grant all privileges on *.* to 'name'@'host' identified by "password" WITH MAX_QUERIES_PER_HOUR 20 MAX_UPDATES_PER_HOUR 10 MAX_CONNECTIONS_PER_HOUR 5 MAX_USER_CONNECTIONS 2;


当账户的限制非0时则会给资源使用计数。
Server运行时给每个账户的使用资源计数,如果达到了连接次数限制则下一个连接将会被拒绝。
同样地若达到了查询、修改等次数限制则会产生一个error信息。
每个账户各自进行资源计数而不是针对客户端。可以全局重置当前的每小时使用的资源计数,也可以针对指定的账户重置计数:
1. 将所有账户计数器清零使用FLUSH USER_RESOURCES语句。重新加载权限表语句也会清零计数器(FLUSH PRIVILEGES或mysqladmin reload命令)
2. 给特定账户清零计数器使用GRANT USAGE语句指定一个与原来一样的限制次数
计数器清零对于max_user_connections无效,系统重启会将所有的计数器清零。

系统查询

#uptime 可以查看系统的运行时间
show global status like 'uptime';
#统计数据库连接数
select SUBSTRING_INDEX(host,':',1) as ip , count(*) from information_schema.processlist group by ip;
原文地址:https://www.cnblogs.com/jinyuanliu/p/10426297.html