Mysql中新建用户及授权的方法分享

在项目开发的过程中可能需要开放自己的数据库给别人,但是为了安全不能自己服务器里其他数据库同时开放。那么可以新建一个用户,给该用户开放特定数据库权限

测试环境:Centos 6.3和Mysql 5.3

一、新建用户

代码如下:

//登录MYSQL
@>mysql -u root -p
@>密码
//创建用户
mysql> insert into mysql.user(Host,User,Password) values("localhost","cplusplus",password("cplusplus.me"));
//刷新系统权限表
mysql>flush privileges;

这样就创建了一个名为:cplusplus 密码为:cplusplus.me 的用户。

二、登录测试

mysql>exit;
@>mysql -u cplusplus -p
@>输入密码
mysql>登录成功

三、用户授权

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

四、部分授权

mysql>grant select,update on cplusplusDB.* to cplusplus@localhost identified by 'cplusplus.me';
//刷新系统权限表。
mysql>flush privileges;

五、删除用户

@>mysql -u root -p
@>密码
mysql>DELETE FROM user WHERE User="cplusplus" and Host="localhost";
mysql>flush privileges;

六、删除数据库

mysql>drop database cplusplusDB;

七、修改密码

@>mysql -u root -p
@>密码
mysql>update mysql.user set password=password('新密码') where User="cplusplus" and Host="localhost";
mysql>flush privileges;

给大家分享一则网友的经验:

1.新建用户

用户root权限登录mysql,新建一个和数据库同名的用户

mysql> INSERT INTO mysql.user(Host,User,Password) VALUES('localhost', 'sun', password('sun123456'));

刷新系统权限表

mysql> FLUSH PRIVILEGES;

如果报错

#1364 – Field ‘ssl_cipher' doesn't have a default value

修改MySQL配置文件linux系统为my.cnf,windows系统为my.ini

sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES

修改为

sql_mode=NO_ENGINE_SUBSTITUTION

重启MySQL服务

2.为用户授权

mysql> GRANT ALL ON sun.* to sun@localhost identified BY 'sun123456';
mysql> FLUSH PRIVILEGES;
(0)

相关推荐

  • 在WIN命令提示符下mysql 用户新建、授权、删除,密码修改

    首先要声明一下:一般情况下,修改MySQL密码,授权,是需要有mysql里的root权限的. 注:本操作是在WIN命令提示符下,phpMyAdmin同样适用. 用户:phplamp 用户数据库:phplampDB 1.新建用户 //登录MYSQL @>mysql -u root -p @>密码 //创建用户 mysql> insert into mysql.user(Host,User,Password) values("localhost","phplam

  • MySQL创建用户与授权方法

    注:我的运行环境是widnows xp professional + MySQL5.0 一, 创建用户: 命令:CREATE USER 'username'@'host' IDENTIFIED BY 'password'; 说明:username - 你将创建的用户名, host - 指定该用户在哪个主机上可以登陆,如果是本地用户可用localhost, 如果想让该用户可以从任意远程主机登陆,可以使用通配符%. password - 该用户的登陆密码,密码可以为空,如果为空则该用户可以不需要密码

  • MySQL创建用户与授权及撤销用户权限方法

    MySQL中创建用户与授权的实现方法. 运行环境:widnows xp professional + MySQL5.0 一, 创建用户 命令:CREATE USER 'username'@'host' IDENTIFIED BY 'password'; 说明:username - 你将创建的用户名, host - 指定该用户在哪个主机上可以登陆,如果是本地用户可用localhost, 如果想让该用户可以从任意远程主机登陆,可以使用通配符%. password - 该用户的登陆密码,密码可以为空,

  • mysql5.7创建用户授权删除用户撤销授权

    一, 创建用户: 命令: CREATE USER 'username'@'host' IDENTIFIED BY 'password'; 说明:username - 你将创建的用户名, host - 指定该用户在哪个主机上可以登陆,如果是本地用户可用localhost, 如果想让该用户可以从任意远程主机登陆,可以使用通配符%. password - 该用户的登陆密码,密码可以为空,如果为空则该用户可以不需要密码登陆服务器. 例子: CREATE USER 'dog'@'localhost' ID

  • MySQL中用户授权以及删除授权的方法

    用户授权方法 你可以通过发出GRANT语句增加新用户: shell> mysql --user=root mysql mysql> GRANT ALL PRIVILEGES ON *.* TO monty@localhost IDENTIFIED BY 'something' WITH GRANT OPTION; mysql> GRANT ALL PRIVILEGES ON *.* TO monty@"%" IDENTIFIED BY 'something' WITH

  • MySql增加用户、授权、修改密码等语句

    1.新建用户. //登录MYSQL @>mysql -u root -p @>密码 //创建用户 mysql> mysql> insert into mysql.user(Host,User,Password,ssl_cipher,x509_issuer,x509_sub ject) values("localhost","pppadmin",password("passwd"),'','',''); 这样就创建了一个名为

  • Mysql中新建用户及授权的方法分享

    在项目开发的过程中可能需要开放自己的数据库给别人,但是为了安全不能自己服务器里其他数据库同时开放.那么可以新建一个用户,给该用户开放特定数据库权限 测试环境:Centos 6.3和Mysql 5.3 一.新建用户 复制代码 代码如下: //登录MYSQL @>mysql -u root -p @>密码 //创建用户 mysql> insert into mysql.user(Host,User,Password) values("localhost","cp

  • mysql中合并两个字段的方法分享

    例如:select (a+b) as c from 表 类型也一致都是varchar型的,可就是显示不正确. 直到concat() MySQL中concat函数 下面通过一个例子介绍MySQL中的concat函数的使用方法,比如select concat('11','22','33'). MySQL中concat函数 使用方法: CONCAT(str1,str2,-) 返回结果为连接参数产生的字符串.如有任何一个参数为NULL ,则返回值为 NULL. 注意: 如果所有参数均为非二进制字符串,则

  • mysql中为用户设置密码的多种方法

    当初次在机器上安装完Mysql时,你可以匿名进行访问数据库或者以不带口令的root身份进入数据库.另外如果你是一个管理员,你还要进行一些用户的建立及授权,这又涉及到设置密码的问题.下面我们就讨论一下如何设置密码: 首先我们应该知道Mysql数据库中的口令存储必须用password()函数加密它.因为在user表中是以加密形式存储口令,而不是作为纯文本.如果你没有加密,直接在数据库中执行以下语句: 复制代码 代码如下: use mysql insert into user (host,user,p

  • MySQL中导出用户权限设置的脚本分享

    在对MySQL数据库进行迁移的时候,有时候也需要迁移源数据库内的用户与权限.对于这个迁移我们可以从mysql.user表来获取用户的相关权限来生成相应的SQL语句,然后在目标服务器上来执行生成的SQL语句即可.本文提供了生成提取用户权限的脚本并给出演示. 1.生成用户权限的脚本 复制代码 代码如下: [root@HKBO ~]# more exp_grant.sh  #!/bin/bash  #Function export user privileges    pwd=123456  expg

  • MySQL中的用户创建与权限管理

    目录 一.用户管理 1.创建MySQL用户 2. 删除MySQL用户 3. 修改MySQL用户 二.权限管理 1. 权限说明 2. 权限保存位置(了解) 3. 给用户授权 4. 查询用户权限 5. with grant option选项 6.revoke回收权限 一.用户管理 在mysql库里有个user表可以查看已经创建的用户 1.创建MySQL用户 注意:MySQL中不能单纯通过用户名来说明用户,必须要加上主机.如hhy@10.1.1.1 基本语法: mysql> create user '

  • mysql中使用instr进行模糊查询方法介绍

    在mysql中使用内部函数instr,可代替传统的like方式查询,并且速度更快. instr 函数,第一个参数是字段,第二个参数是要查询的串,返回串的位置,第一个是1,如果没找到就是0. 例如,查询字段name中带"军"的名字,传统的方法是: select name from 用户表 where name like `%军%'; 用instr的方法: select name from 用户表 where instr('name','军'); 或: select name from 用

  • 查找MySQL中查询慢的SQL语句方法

    如何在mysql查找效率慢的SQL语句呢?这可能是困然很多人的一个问题,MySQL通过慢查询日志定位那些执行效率较低的SQL 语句,用--log-slow-queries[=file_name]选项启动时,mysqld 会写一个包含所有执行时间超过long_query_time 秒的SQL语句的日志文件,通过查看这个日志文件定位效率较低的SQL .下面介绍MySQL中如何查询慢的SQL语句 一.MySQL数据库有几个配置选项可以帮助我们及时捕获低效SQL语句 1,slow_query_log 这

  • mysql 的root 用户无法授权及解决navicat 远程授权提示1044问题

    先看解决方案 #------------mysql root 用户无法赋权问题解决 -------- 1,登录 mysql -u root -p 2,use mysql; 选择mysql数据库 3,执行以下操作(查询用户的赋权权限,更改赋权权限 ,刷新生效) mysql> select user,host,grant_priv from user; +---------------+-----------+------------+ | user | host | grant_priv | +-

  • mysql中datetime类型设置默认值方法

    通过navicat客户端修改datetime默认值时,遇到了问题. 数据库表字段类型datetime,原来默认为NULL,当通过界面将默认值设置为当前时间时,提示"1067-Invalid default value for 'CREATE_TM'",而建表的时候,则不会出现这个问题,比如建表语句: CREATE TABLE `app_info1` ( `id` bigint(21) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键ID', `a

  • mysql中find_in_set函数的基本使用方法

    前言 这是我最近新接触到的一个函数, 我在项目中的使用场景是这样的: 有一个应用类型表,表中有parentId字段和parentIds字段,前者为父级id,后者为多级父级id,在库中都是varchar类型,parentIds由多个父级id拼接而成由","分隔. 组长告知我可以使用该函数,就去进行了了解与使用. 语法 FIND_IN_SET(str,strlist) 定义 假如字符串str在由多个子链组成的字符串列表strlist中,则返回值的范围在1到N之间. 一个字符串列表就是一个由

随机推荐