zoukankan      html  css  js  c++  java
  • Mysql 学习笔记5 之 创建用户

    1 insert 语句

    首先要知道mysql有个user表专门存储用户信息的,按说可以直接向 mysql.user表中插入new user,但是因为字段比较多,外加一些未知的限制,很容易出错 (至少我还没尝试成功);并且如果使用这种方法创建新用户,必须执行 flush privileges 来告诉server to reload the grant tables

    相关:

    1) 基本语法:

    创建用户:

    INSERT INTO mysql.user (Host,User,Password)
        -> VALUES('localhost','user_name',password('your_pwd'));
        -> FLUSH PRIVILEGES;

    //提示错误 ssl_cipher 没有默认值,但是查询user表 属性是可为NULL;按照官方文档设置相应字段还是提示column count doesn't match value count at row 1 。

    授予权限:

    INSERT INTO db
        -> (Host,Db,User,Select_priv,Insert_priv,
        ->  Update_priv,Delete_priv,Create_priv,Drop_priv)
        ->  VALUES('localhost','database_name','user_name',
        ->  'Y','Y','Y','Y','Y','Y');
       -> FLUSH PRIVILEGES;

    2)user表:

    >desc mysql.user;  //查看表结构
    >select * from mysql.user;  //查看所有的用户
    >select current_user;   //查看当前用户和主机名

    2 create/grant 语句

     以 root身份登陆,创建新用户:用户名为dbuser_name,密码为user_pwd

    >mysql -u root -p
    [input password]

     创建+赋权的标准语法:grant select,insert,update,delete on 数据库.*  to 用户名@登陆主机 identified by 'your_pwd'

    >grant all on  *.*  to dbuser_name@"%"  identified by '[user_pwd]'
    >grant all privileges on  *.* to dbuser_name@localhost   dentified by '[user_pwd]'

    或分开

    >create user '用户名'@'主机名identified by 'your_pwd';
    >grant all/[privileges] on 数据库名.* to 用户名@'主机名' ;   //即允许某些IP地址的主机(可为远程的主机)通过某用户和密码对MYSQL server上某数据库进行某些权限的访问和操作,其中privileges包括select,insert,update,delete,create,drop

    ps:关于主机名的通配符

    %:指允许任何ip地址的主机访问mysql server
    172.1.1.%或%.mydomain.com :只允许匹配的主机访问mysql
    localhost:只允许本机访问

     附:远程访问

    1)server端创建用户和数据库和允许访问的主机(如上);关闭防火墙或其他可能限制访问的设置

    2)要进行远程访问的本机安装mysql(或client工具);安装myodbc驱动并做相关配置

    3)mysql环境下进行远程访问  (>mysql  -h [要访问的mysql server的IP]  -u [user_name] -p [password] )

    3 新用户登入

    cmd路径:

    c:\mysql\bin\mysql -h 服务器IP  -u dbuser_name -p
    [input password]
    >create database database_name;
    >create table table_name;

    4 修改用户密码(root用户下)

    mysql>update mysql.user set password=password('新密码') where user="user_name" and host="localhost"
    mysql>flush privileges;

    5 删除用户(在root用户下,保证具有删除权限)

     mysql>delete from mysql.user where user="用户名" and host="主机名";

    官方文档参考
    http://dev.mysql.com/doc/refman/5.1/en/index.html
     
  • 相关阅读:
    BZOJ 1008 [HNOI2008]越狱 (简单排列组合 + 快速幂)
    BZOJ 1007 [HNOI2008]水平可见直线 (栈)
    Java Date,long,String 日期转换
    android学习---- WindowManager 接口 (
    ListView 使用详解
    @synchronized (object)使用详解
    Android View坐标getLeft, getRight, getTop, getBottom
    Android:Layout_weight的深刻理解
    onTouch事件试验(覆写onTouchEvent方法,同时设置onTouchListener)
    FragmentPagerAdapter与FragmentStatePagerAdapter区别
  • 原文地址:https://www.cnblogs.com/20120810bubu/p/3026616.html
Copyright © 2011-2022 走看看