MySQL的读书–用户创立授权

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

前几日有时间了,将数据库相关的命令用博客备份一下。其中多少尚未品味过,如有错误请指正。

1. 创设用户

create user username@’host’ identified by ‘password’;

MySQL,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;//把字段修改到指定字段之后

 

网站地图xml地图