zoukankan      html  css  js  c++  java
  • MySQL的学习--用户创建授权

    前一段时间,将项目改成SAAS的架构,每个billing account都可以获得一个子域,一个单独的数据库,一个单独的数据库用户和对应数据库的权限。

    现在有时间了,将数据库相关的命令用博客备份一下。其中有些没有尝试过,如有错误请指正。

    1. 创建用户

    create user username@'host' identified by 'password';

    insert into mysql.user(Host,User,Password) values("host", "username", password("password"));

    如果希望指定的用户只能从某台指定的域(domain)或主机访问,可以在创建用户时指定host,例如10.10.10.22,如果希望能够从本地登录,可以将host设成localhost,如果希望在个台机器上都能链接,可以将host设为%。

    2. 创建查看数据库

    show databases;//显示数据库

    create database dbname; //创建一个数据库

    use dbname;//进入数据库

    show tables;//显示表

    desc tablename;//显示表结构

    source sql/file/path;导入sql文件

    3. 用户授权

    grant all privileges on dbname.* to username@'%' identified by 'password';//授权username用户拥有dbname数据库的所有权限

    grant select, update on dbname.* to username@'%' identified by 'password';//授权username用户拥有dbname数据库的指定部分权限

    4. 刷新授权

    flush privileges;

    5. 删除用户和撤销权限

    drop user username@host;//取消一个账户和其权限

    revoke privilege on dbname.tablename FROM 'username'@'host';//取消授权用户

    delete from user where user = "username" and host = "host";//删除用户

    6. 修改用户密码

    mysqladmin -uroot -proot password 123;//将root用户的密码改为123

    update mysql.user set password=password('新密码') where user="username" and host="localhost";

    set password for 'username'@'host' = password('newpassword');

    7. 删除数据库

    drop database dbname;//删除一个已经确定存在的数据库

    alter table 表名 ENGINE=存储引擎名;//修改表的存储引擎

    alter table 表名 drop 属性名;//删除字段

    alter table 旧表名 rename to 新表名;//修改表名

    alter table 表名 modify 属性名 数据类型;//修改字段数据类型

    alter table 表名 change 旧属性名 新属性名 新数据类型;//修改字段名

    alter table 表名 drop FOREING KEY 外键别名;//删除子表外键约束

    alter table example add phone VARCHAR(20);//增加无约束的字段

    alter table example add age INT(4) NOT NULL;//增加有约束的字段

    alter table example add num INT(8) PRIMARY KEY FIRST;//表的第一个位置增加字段

    alter table example add address VARCHAR(30) NOT NULL AFTER phone;//表的指定位置之后增加字段

    alter table example modify name VARCHAR(20) FIRST;//把字段修改到第一位

    alter table example modify num INT(8) ATER phone;//把字段修改到指定字段之后

  • 相关阅读:
    Linux更改文件文件夹所属用户组(chgrp)
    Linux服务器查看请求数
    装Office 2010提示Error 1406的解决方法
    实时数据库简介和比较
    敏捷软件开发模型SCRUM【转】
    实时数据库系统
    实时数据库的事务处理
    各浏览器下使用 OBJECT 元素和 EMBED 元素嵌入 Flash 存在差异
    中国煤矿历年事故死亡人数及分析
    实时/历史数据库和关系型数据库的区别
  • 原文地址:https://www.cnblogs.com/CraryPrimitiveMan/p/4022871.html
Copyright © 2011-2022 走看看