这篇文章主要介绍MySQL添加新用户、为用户创建数据库、为新用户分配权限和MySQL基本命令。
参考博客http://blog.csdn.net/u013216667/article/details/70158452
一、登录MySQL
mysql -u root -p
二、添加新用户
允许本地 IP 访问 localhost, 127.0.0.1
# 第一种添加方式
# username:jasper
# password: 123456
create user 'jaser'@'localhost' identified by '123456';
# 第二种添加方式
# username:laravel_tx
# password: 123456
insert into mysql.user(Host,User,Password) values("localhost","laravel_tx",password("123456"));
允许外网 IP 访问
# username:jasper
# password: 123456
create user 'jaser'@'%' identified by '123456';
# 修改用户密码
update mysql.user set password=password('123456') where User="jasper" and Host="localhost";
三、刷新授权
flush privileges;
四、为用户创建数据库
create database laravel DEFAULT CHARSET utf8 COLLATE utf8_general_ci;
五、为新用户分配权限
授予用户在本地服务器对该数据库的全部权限
grant all privileges on `laravel`.* to 'jasper'@'localhost' identified by '123456';
指定部分权限给用户
grant select on laravel.* to laravel_tx@localhost identified by '123456';
六、刷新权限
flush privileges;
七、退出 root 重新登录
exit;
八、新用户登陆
mysql -u jasper -h 127.0.0.1 -p
九、创建数据表
show databases;
use laravel;
CREATE TABLE IF NOT EXISTS tasks (
task_id bigint(20) NOT NULL AUTO_INCREMENT,
subject VARCHAR(45) DEFAULT NULL,
start_date DATE DEFAULT NULL,
end_date DATE DEFAULT NULL,
description VARCHAR(200) DEFAULT NULL,
PRIMARY KEY (task_id)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 comment='任务信息表';
十、插入一条数据
INSERT INTO tasks ( subject, start_date, end_date,description ) VALUES ( 'laravel框架','2017-11-19', '2017-12-30','有插入权限的用户插入数据');
十一、基本SQL语句
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;//把字段修改到指定字段之后
# 创建唯一索引
alter table example add unique index_name (column_list);
# 创建普通索引
alter table example add index index_name (column_list)