热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

mysql管理地址_mysql用户管理

1.实验环境:1.1服务器操作系统为centos71.2数据库由yum安装安装命令:yum-yinstallmariadbmariadb-server1

1. 实验环境:

1.1 服务器操作系统为centos7

1.2 数据库由yum安装

安装命令:

yum -y install mariadb mariadb-server

1.3 使用mysql命令直接登录数据库

[root@host-137 ~]# mysql

Welcome to the MariaDB monitor. Commands end with ; or \g.

Your MariaDB connection id is 3

Server version: 5.5.68-MariaDB MariaDB Server

Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

2. 查看所有的用户

MariaDB [(none)]> select user,host,password from mysql.user;

+------+-----------+----------+

| user | host | password |

+------+-----------+----------+

| root | localhost | |

| root | host-137 | |

| root | 127.0.0.1 | |

| root | ::1 | |

| | localhost | |

| | host-137 | |

+------+-----------+----------+

6 rows in set (0.00 sec)

3. 创建用户

3.1 语法格式:

create user 用户名@'地址' identified by'密码';

注:

地址的表示方法有:

'%'

'localhost'

'127.0.0.1'

'10.0.0.%'

'10.0.0.5%'

'10.0.0.0/255.255.254.0'

'10.0.%'

3.2 创建用户实例:

MariaDB [(none)]> create user tom@'localhost' identified by '123';

Query OK, 0 rows affected (0.00 sec)

4. 修改用户密码

4.1 方法一

4.1.1 SQL语句

update user set password=password('新密码') where host='主地址' and user='用户名';

flush privileges;//刷新权限

4.1.2 实例:

MariaDB [(none)]> 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

MariaDB [mysql]> update user set password=password('456') where user='tom';

Query OK, 1 row affected (0.01 sec)

Rows matched: 1 Changed: 1 Warnings: 0

刷新授权表

MariaDB [mysql]> flush privileges;

Query OK, 0 rows affected (0.00 sec)

4.2 方法二

4.2.1 SQL语句

set password for 用户名@'主机地址' =password('新密码'); //注这种方法无需刷新权限

4.2.2 实例:

MariaDB [mysql]> set password for tom@'localhost'=password('123');

Query OK, 0 rows affected (0.00 sec)

5. 忘记root密码后的恢复

5.1 先给root设置密码 123

mysqladmin -uroot password 123

5.2 然后将mysql服务停止

systemctl stop mariadb

5.2 修改mysql配置文件,跳过授权表

vim /etc/my.cnf

在[mysqld]下添加一行 skip_grant_tables=1,使其登录时跳过权限检查

374a4405d7f058c1dfd196b0b2c6e3fe.png

5.3 保存退出之后启动mysql服务

systemctl start mariadb

5.4 登录mysql重置root的密码

[root@host-137 ~]# mysql

Welcome to the MariaDB monitor. Commands end with ; or \g.

MariaDB [(none)]> update mysql.user set password=password('456') where user='root';

Query OK, 3 rows affected (0.00 sec)

Rows matched: 4 Changed: 3 Warnings: 0

MariaDB [(none)]> flush privileges;

Query OK, 0 rows affected (0.00 sec)

5.5 使用新密码登录mysql测试

[root@host-137 ~]# mysql -uroot -p456

Welcome to the MariaDB monitor. Commands end with ; or \g.

Your MariaDB connection id is 4

Server version: 5.5.68-MariaDB MariaDB Server

Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

MariaDB [(none)]>

登录成功!!!

6. 数据库用户的权限设置

6.1 MySQL授权的语句:

grant 权限列表 on 权限的层级 to '用户名'@'主机IP'

6.2 权限列表有

ALL ,SELECT,INSERT, UPDATE, DELETE, CREATE, DROP, RELOAD, SHUTDOWN, PROCESS, FILE, REFERENCES, INDEX, ALTER, SHOW DATABASES, SUPER, CREATE TEMPORARY TABLES, LOCK TABLES, EXECUTE, REPLICATION SLAVE, REPLICATION CLIENT, CREATE VIEW, SHOW VIEW, CREATE ROUTINE, ALTER ROUTINE, CREATE USER, EVENT, TRIGGER, CREATE TABLESPACE

6.3 权限层级

权限可以分为四个层级:

全局级别(*.*)

数据库级别(数据库名.*)

表级别(数据库名.表名)

列级别( 权限(列) 数据库名.表名)。

存放位置

全局级别的权限存放在mysql.user表中

数据库级别的权限存放在mysql.db或者mysql.host

表级别的权限存放在mysql.tables_priv中

列级别的权限存放在mysql.columns_priv中。

6.4 为用户授权

6.4 授权的同时创建用户

grant 权限列表 on 数据库名.表名 to 用户@'地址' identified by '密码';

MariaDB [(none)]> grant select on mysql.* to tom@'localhost' identified by '123';

Query OK, 0 rows affected (0.00 sec)

7. 收回用户的权限

7.1 查看用户的权限:

show grants for 用户@'地址';

实例:

MariaDB [(none)]> show grants for tom@'localhost';

+------------------------------------------------------------------------------------------------------------+

| Grants for tom@localhost |

+------------------------------------------------------------------------------------------------------------+

| GRANT USAGE ON *.* TO 'tom'@'localhost' IDENTIFIED BY PASSWORD '*23AE809DDACAF96AF0FD78ED04B6A265E05AA257' |

| GRANT SELECT ON `mysql`.* TO 'tom'@'localhost' |

+------------------------------------------------------------------------------------------------------------+

2 rows in set (0.00 sec)

7.2 收回用户的权限:

revoke 权限列表 on 数据库名.表名 from 用户@'地址';

实例:

MariaDB [(none)]> revoke select on mysql.* from tom@'localhost';

Query OK, 0 rows affected (0.00 sec)

在查看tom用户权限已经为空

MariaDB [(none)]> show grants for tom@'localhost';

+------------------------------------------------------------------------------------------------------------+

| Grants for tom@localhost |

+------------------------------------------------------------------------------------------------------------+

| GRANT USAGE ON *.* TO 'tom'@'localhost' IDENTIFIED BY PASSWORD '*23AE809DDACAF96AF0FD78ED04B6A265E05AA257' |

+------------------------------------------------------------------------------------------------------------+

1 row in set (0.00 sec)



推荐阅读
  • 基于PgpoolII的PostgreSQL集群安装与配置教程
    本文介绍了基于PgpoolII的PostgreSQL集群的安装与配置教程。Pgpool-II是一个位于PostgreSQL服务器和PostgreSQL数据库客户端之间的中间件,提供了连接池、复制、负载均衡、缓存、看门狗、限制链接等功能,可以用于搭建高可用的PostgreSQL集群。文章详细介绍了通过yum安装Pgpool-II的步骤,并提供了相关的官方参考地址。 ... [详细]
  • 安装mysqlclient失败解决办法
    本文介绍了在MAC系统中,使用django使用mysql数据库报错的解决办法。通过源码安装mysqlclient或将mysql_config添加到系统环境变量中,可以解决安装mysqlclient失败的问题。同时,还介绍了查看mysql安装路径和使配置文件生效的方法。 ... [详细]
  • 搭建Windows Server 2012 R2 IIS8.5+PHP(FastCGI)+MySQL环境的详细步骤
    本文详细介绍了搭建Windows Server 2012 R2 IIS8.5+PHP(FastCGI)+MySQL环境的步骤,包括环境说明、相关软件下载的地址以及所需的插件下载地址。 ... [详细]
  • 本文介绍了如何使用php限制数据库插入的条数并显示每次插入数据库之间的数据数目,以及避免重复提交的方法。同时还介绍了如何限制某一个数据库用户的并发连接数,以及设置数据库的连接数和连接超时时间的方法。最后提供了一些关于浏览器在线用户数和数据库连接数量比例的参考值。 ... [详细]
  • Centos7.6安装Gitlab教程及注意事项
    本文介绍了在Centos7.6系统下安装Gitlab的详细教程,并提供了一些注意事项。教程包括查看系统版本、安装必要的软件包、配置防火墙等步骤。同时,还强调了使用阿里云服务器时的特殊配置需求,以及建议至少4GB的可用RAM来运行GitLab。 ... [详细]
  • 本文介绍了三种方法来实现在Win7系统中显示桌面的快捷方式,包括使用任务栏快速启动栏、运行命令和自己创建快捷方式的方法。具体操作步骤详细说明,并提供了保存图标的路径,方便以后使用。 ... [详细]
  • CentOS 7部署KVM虚拟化环境之一架构介绍
    本文介绍了CentOS 7部署KVM虚拟化环境的架构,详细解释了虚拟化技术的概念和原理,包括全虚拟化和半虚拟化。同时介绍了虚拟机的概念和虚拟化软件的作用。 ... [详细]
  • ubuntu用sqoop将数据从hive导入mysql时,命令: ... [详细]
  • CentOS 6.5安装VMware Tools及共享文件夹显示问题解决方法
    本文介绍了在CentOS 6.5上安装VMware Tools及解决共享文件夹显示问题的方法。包括清空CD/DVD使用的ISO镜像文件、创建挂载目录、改变光驱设备的读写权限等步骤。最后给出了拷贝解压VMware Tools的操作。 ... [详细]
  • 本文介绍了使用cacti监控mssql 2005运行资源情况的操作步骤,包括安装必要的工具和驱动,测试mssql的连接,配置监控脚本等。通过php连接mssql来获取SQL 2005性能计算器的值,实现对mssql的监控。详细的操作步骤和代码请参考附件。 ... [详细]
  • Vagrant虚拟化工具的安装和使用教程
    本文介绍了Vagrant虚拟化工具的安装和使用教程。首先介绍了安装virtualBox和Vagrant的步骤。然后详细说明了Vagrant的安装和使用方法,包括如何检查安装是否成功。最后介绍了下载虚拟机镜像的步骤,以及Vagrant镜像网站的相关信息。 ... [详细]
  • centos安装Mysql的方法及步骤详解
    本文介绍了centos安装Mysql的两种方式:rpm方式和绿色方式安装,详细介绍了安装所需的软件包以及安装过程中的注意事项,包括检查是否安装成功的方法。通过本文,读者可以了解到在centos系统上如何正确安装Mysql。 ... [详细]
  • 阿,里,云,物,联网,net,core,客户端,czgl,aliiotclient, ... [详细]
  • 本文介绍了在CentOS上安装Python2.7.2的详细步骤,包括下载、解压、编译和安装等操作。同时提供了一些注意事项,以及测试安装是否成功的方法。 ... [详细]
  • 本文详细介绍了git常用命令及其操作方法,包括查看、添加、提交、删除、找回等操作,以及如何重置修改文件、抛弃工作区修改、将工作文件提交到本地暂存区、从版本库中删除文件等。同时还介绍了如何从暂存区恢复到工作文件、恢复最近一次提交过的状态,以及如何合并多个操作等。 ... [详细]
author-avatar
喜欢上爱的感觉了
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有