MySQL经常使用操做记录

文章做者:foochanehtml

原文连接:foochane.cn/article/201…mysql

1 查看数据库当前用户及权限

use mysql; #信息放在mysql.user表下
desc users;
select host,user from mysql.user;
复制代码

2 建立用户

命令:sql

CREATE USER 'username'@'host' IDENTIFIED BY 'password';

复制代码

说明:shell

  • username:你将建立的用户名
  • host:指定该用户在哪一个主机上能够登录,若是是本地用户可用localhost,若是想让该用户能够从任意远程主机登录,可使用通配符%
  • password:该用户的登录密码,密码能够为空,若是为空则该用户能够不须要密码登录服务器

如:数据库

CREATE USER 'test'@'%' IDENTIFIED BY '123456'

复制代码

3 用户受权

命令:服务器

GRANT privileges ON databasename.tablename TO 'username'@'host'

复制代码

说明:ide

  • privileges:用户的操做权限,如SELECTINSERTUPDATE等,若是要授予所的权限则使用ALL
  • databasename:数据库名
  • tablename:表名,若是要授予该用户对全部数据库和表的相应操做权限则可用表示,如.*

例子:函数

GRANT SELECT, INSERT ON test_database.test_table TO 'testuser'@'%';
GRANT ALL ON test_database.* TO 'testuser'@'%';
GRANT ALL ON *.* TO 'testuser'@'%';
复制代码

注意:spa

用以上命令受权的用户不能给其它用户受权,若是想让该用户能够受权,用如下命令:rest

GRANT privileges ON databasename.tablename TO 'username'@'host' WITH GRANT OPTION;

复制代码

4 撤销用户权限

命令:

REVOKE privilege ON databasename.tablename FROM 'username'@'host';

复制代码

说明: 说明:

  • privileges:用户的操做权限,如SELECTINSERTUPDATE等,若是要授予所的权限则使用ALL
  • databasename:数据库名
  • tablename:表名,若是要授予该用户对全部数据库和表的相应操做权限则可用*表示,如*.*

例子:

REVOKE ALL ON *.* FROM 'testuser'@'%';

复制代码

5 删除用户

命令:

DROP USER 'username'@'host';

复制代码

6 设置与更改用户密码

命令:

SET PASSWORD FOR 'username'@'host' = PASSWORD('newpassword');

复制代码

若是是当前登录用户用:

SET PASSWORD = PASSWORD("newpassword");

复制代码

7 查看当前登陆用户,当前数据库

select user();

select database();

复制代码

注意这里 uer(),database()不是语句,是函数。

8 建立表删除表

建立:

create database databasename;
create database if not exists databasename;

复制代码

删除:

drop database databasename;

复制代码

9 mysql启动中止查看状态

service mysql status
 service mysql start
 service mysql stop
 service mysql restart
复制代码

10 mysql没法远程访问问题解决

1 查看配置文件,看是否只容许本地访问

配置文件具体位置 /etc/mysql/mysql.conf.d/mysqld.cnf

不一样版本可能不同。

若有以下内容,把它注释掉:

#bind-address           = 127.0.0.1

复制代码

2 防火墙问题

查看端口占用状况:

netstat -nalp | grep "3306"

复制代码

关闭防火墙

sudo ufw status
sudo ufw disable

复制代码

3 mysql用户没有受权

CREATE USER 'hiveuser'@'%' IDENTIFIED BY '123456';
grant all privileges on *.* to 'hiveuser'@'%' identified by '123456' with grant option; 
flush privileges;
create database metastore;

复制代码
相关文章
相关标签/搜索