首页 > 数据库 >使用MySQL命令行新建用户并授予权限的方法

使用MySQL命令行新建用户并授予权限的方法

时间:2023-08-28 10:35:18浏览次数:36  
标签:grant MySQL 用户 123 joe 命令行 mysql 权限


MySQL命令行能否实现新建用户呢?答案无疑是肯定的。而且在使用使用MySQL命令行新建用户后,还可以为用户授予权限。




首先要声明一下:一般情况下,修改MySQL密码,授权,是需要有mysql里的root权限的。


注:本操作是在WIN命令提示符下,phpMyAdmin同样适用。


用户:phplamp


用户数据库:phplampDB




1.MySQL命令行新建用户


//登录MYSQL
 
@>mysql -u root -p
 
@>密码
 
//创建用户
 
mysql> insert into mysql.user(Host,User,Password) values('localhost','phplamp',password('1234'));
 
//刷新系统权限表
 
mysql>flush privileges;
 
这样就创建了一个名为:phplamp  密码为:1234  的用户。
 

 
//退出后登录一下
 
mysql>exit;
 
@>mysql -u phplamp -p
 
@>输入密码
 
mysql>登录成功


2.MySQL命令行为用户授权


//登录MYSQL(有ROOT权限)。我里我以ROOT身份登录.
 
@>mysql -u root -p
 
@>密码
 
//首先为用户创建一个数据库(phplampDB)
 
mysql>create database phplampDB;
 
//授权phplamp用户拥有phplamp数据库的所有权限
 
@>grant all privileges on phplampDB.* to phplamp@localhost identified by '1234';
 
//刷新系统权限表
 
mysql>flush privileges;
 
mysql>其它操作
 

 
//如果想指定部分权限给一用户,可以这样来写:
 
mysql>grant select,update on phplampDB.* to phplamp@localhost identified by '1234';
 
//刷新系统权限表。
 
mysql>flush privileges;

mysql> grant 权限1,权限2,…权限n on 数据库名称.表名称 to 用户名@用户地址 identified by ‘连接口令’;




权限1,权限2,…权限n代表select,insert,update,delete,create,drop,index,alter,grant,references,reload,shutdown,process,file等14个权限。


当权限1,权限2,…权限n被all privileges或者all代替,表示赋予用户全部权限。


当数据库名称.表名称被*.*代替,表示赋予用户操作服务器上所有数据库所有表的权限。


用户地址可以是localhost,也可以是ip地址、机器名字、域名。也可以用’%'表示从任何地址连接。


‘连接口令’不能为空,否则创建失败。




例如:


mysql>grant select,insert,update,delete,create,drop on vtdc.employee to [email protected] identified by ‘123′;


给来自10.163.225.87的用户joe分配可对数据库vtdc的employee表进行select,insert,update,delete,create,drop等操作的权限,并设定口令为123。




mysql>grant all privileges on vtdc.* to [email protected] identified by ‘123′;


给来自10.163.225.87的用户joe分配可对数据库vtdc所有表进行所有操作的权限,并设定口令为123。




mysql>grant all privileges on *.* to [email protected] identified by ‘123′;


给来自10.163.225.87的用户joe分配可对所有数据库的所有表进行所有操作的权限,并设定口令为123。



mysql>grant all privileges on *.* to joe@localhost identified by ‘123′;

给本机用户joe分配可对所有数据库的所有表进行所有操作的权限,并设定口令为123。

标签:grant,MySQL,用户,123,joe,命令行,mysql,权限
From: https://blog.51cto.com/u_16237557/7260852

相关文章

  • Linux下MySql开放访问权限
    在Linux下安装完数据库后,局域网内无法访问。 设置方法:1.停止mysql,进入/etc/mysql/,编辑my.cnf,找到bind-address的配置,改为0.0.0.0,然后启动mysql2.登录mysql,进入mysql数据库,执行updateusersethost='%'wherehost='127.0.0.1'anduser='root',执行完成后再使用命令flushprivileg......
  • ubuntu上mysql的安装以及基本用法
    1.使用apt-get查找当前可用的mysql版本.apt-cachesearchmysql返回的结果集为: 2.通过结果集找到最新可用的服务端是mysql-server,安装mysql-serversudoapt-getinstallmysql-server 按提示安装即可(中间会提示设置root口令)。3.测试是否安装正确#登录mysql-uroot-p出现以下......
  • MySQLSTMT函数详解及使用方法(mysql_stmt())
    MySQL_STMT函数详解及使用方法 MySQL_STMT是MySQL提供的一个CAPI,用于执行预处理语句(Preparedstatements)。相比于直接执行SQL,预处理语句具有更高的运行效率和更好的安全性。本文将详细介绍MySQL_STMT函数的使用方法。 1.创建预处理语句 使用MySQL_STMT,需要先创建一个预......
  • MySQL学习笔记
    SQL注释单行注释:–-或#注释内容多行注释:/*注释内容*/SQL分类分类说明DDL数据定义语言,用来定义数据库对象DMI数据操作语言,用来对数据库表中的数据进行增删改DQL数据查询语言,用来查询数据库中表的记录DCL数据控制语言,用来创建数据库用户,控制数据库的访......
  • mysql学习-生产配置文件示例以及分区配置
    生产上mysql配置文件my.cnf[mysqld]#default-character-set=utf8basedir=/data/mysqldatadir=/data/mysql/data#skip-grant-tableslower_case_table_names=1socket=/tmp/mysql.sockport=3306server-id=2innodb_flush_log_at_trx_commit=0innodb_autoextend_increment=128......
  • shell命令概述 Shell作用:命令解释器 介于操作系统内核与用户之间,负责解释命令行 获得
    shell命令概述Shell作用:命令解释器介于操作系统内核与用户之间,负责解释命令行获得命令帮助内部命令help命令的“--help”选项使用man命令阅读手册页命令行编辑的几个辅助操作Tab键:自动补齐反斜杠“\”:强制换行快捷键Ctrl+U:清空至行首快捷键Ctrl+K:清空至行尾快捷键Ctr......
  • 【教程分享】Docker搭建Zipkin,实现数据持久化到MySQL、ES
    1拉取镜像指定版本,在git查看相应版本,参考:https://github.com/openzipkin/zipkin如2.21.7dockerpullopenzipkin/zipkin:2.21.72启动Zipkin默认端口为9411。启动时通过-eserver.port=xxxx设置指定端口dockerrun--namezipkin-server-d--restart=always-p9411:941......
  • qt5 odbc mysql 开发配置
    qt5应用odbc使用mysql 要点apt-getinstallmysql-serverapt-getinstallmysqlclient-dev配置mysql-server可以安装apt-getinstallmysql-workbenchapt-getinstallmysql-connector-odbc配置/etc/odbc.ini/etc/odbcinst.iniapt-getinstallunixodbcisqlDNS-v......
  • 深入理解Linux权限管理:掌握文件和目录权限设置
    一、Linux权限概念linux操作系统中有两类用户,一类是超级用户,另一类是普通用户。超级用户:比较豪横,在linux系统中做任何事情,不受限制。普通用户:在linux允许的权限下做有限的事情。在命令行提示符他们两的区别:如上为普通用户提示符为$而超级用户命令提示符为#1.1、su命令命令:su[用户......
  • Linux权限chmod
    在Linux中,我们具有3种类型的文件权限:读(r),写(w)和执行(x)权限。这些权限确定哪些用户可以读取,写入或执行文件。您可以使用文本或八进制(数字)表示法来分配这些权限,我们将在本教程后面讨论。文件和目录可以属于文件(u),组(g)或其他(o)的所有者u-所有人的权限g-所有组的权限o-其他......