mysql常用操作增加新用户/分配权限/修正表/建索引等<转载>ITeye - 凯发娱乐

mysql常用操作增加新用户/分配权限/修正表/建索引等<转载>ITeye

2019年03月26日11时02分24秒 | 作者: 怀山 | 标签: 权限,用户,操作 | 浏览: 833

bin mysql -u root
mysql grant 权限1,权限2,…权限n on 数据库称号.表称号 to 用户名@用户地址 identified by ‘衔接口令’;

权限1,权限2,…权限n代表select,insert,update,delete,create,drop,index,alter,grant,references,reload,shutdown,process,file等14个权限。
当权限1,权限2,…权限n被all privileges或许all替代,表明赋予用户悉数权限。
当数据库称号.表称号被*.*替代,表明赋予用户操作服务器上一切数据库一切表的权限。
用户地址可所以localhost,也可所以ip地址、机器姓名、域名。也可以用’%表明从任何地址衔接。
‘衔接口令’不能为空,不然创立失利。

 例如:
mysql grant select,insert,update,delete,create,drop on vtdc.employee to joe@10.163.225.87 identified by ‘123′;
给来自10.163.225.87的用户joe分配可对数据库vtdc的employee表进行select,insert,update,delete,create,drop等操作的权限,并设定口令为123。

mysql grant all privileges on vtdc.* to joe@10.163.225.87 identified by ‘123′;
给来自10.163.225.87的用户joe分配可对数据库vtdc一切表进行一切操作的权限,并设定口令为123。

mysql grant all privileges on *.* to joe@10.163.225.87 identified by ‘123′;
给来自10.163.225.87的用户joe分配可对一切数据库的一切表进行一切操作的权限,并设定口令为123。

mysql grant all privileges on *.* to joe@localhost identified by ‘123′;
给本机用户joe分配可对一切数据库的一切表进行一切操作的权限,并设定口令为123。

 

创立含有外键的表:

create table question(id int auto_increment primary key not null,content varchar(300) not null, intime datetime not null,u_id int not null,foreign key(u_id) references user(id) on delete cascade on update cascade);

 


 备份数据表
shell mysqldump [OPTIONS] database [tables]

比如:

/usr/local/mysql/bin/mysqldump -u 用户名 -p 数据库称号 ./fedtrainning_db.sql
假如你不给定任何表,整个数据库将被导出。

 

修正表的特点 =增、删、改
ALTER TABLE notify CHANGE content content varchar(500) not null

 

//主键

 alter table tabelname add new_field_id int(5) unsigned default 0 not null auto_increment ,add primary key (new_field_id);

//添加一个新列

 alter table t2 add d timestamp;
alter table infos add ex tinyint not null default 0;

//删去列

 alter table t2 drop column c;

//重命名列

 alter table t1 change a b integer;


//改动列的类型

 alter table t1 change b b bigint not null;
alter table infos change list list tinyint not null default 0;

//重命名表

 alter table t1 rename t2;

加索引

 mysql alter table tablename change depno depno int(5) not null;
mysql alter table tablename add index 索引名 (字段名1[,字段名2 …]);
mysql alter table tablename add index emp_name (name);

加主关键字的索引

mysql alter table tablename add primary key(id);

加仅有约束条件的索引

 mysql alter table tablename add unique emp_name2(cardnumber);

删去某个索引

 mysql alter table tablename drop index emp_name;

修正表:

添加字段:

 mysql ALTER TABLE table_name ADD field_name field_type;

修正原字段称号及类型:

 mysql ALTER TABLE table_name CHANGE old_field_name new_field_name field_type;

删去字段:

 mysql ALTER TABLE table_name DROP field_name; 

 

= 编码相关

 

1修正整个数据库服务器

在my.cf文件的[mysqld]段设置:
default-character-set=utf8

2独自设置某个数据库:

alter database testdb character set utf8;

3 检查mysql支撑的编码:
show character set;

4检查数据库的编码格局:

show create database testdb;

5 检查数据库的各项编码设置:

mysql SHOW VARIABLES LIKE character_set_%;


SET NAMES utf8;

它相当于下面的三句指令:

SET character_set_client = utf8;
SET character_set_results = utf8;
SET character_set_connection = utf8;

 

转载:

版权声明
本文来源于网络,版权归原作者所有,其内容与观点不代表凯发娱乐立场。转载文章仅为传播更有价值的信息,如采编人员采编有误或者版权原因,请与我们联系,我们核实后立即修改或删除。

猜您喜欢的文章