-
MySQL数据库管理
-
mysql数据文件
-
存放在初始化时定义的datadir
-
该目录下放置三种后缀文件
-
.frm
-
与表相关的元数据(meta),表结构的定义信息等。
-
-
.MYD
-
mylSAM存储引擎专用
-
-
.MYI
-
mylSAM存储引擎专用
-
-
-
-
-
MySQL语言类型
-
DDL(数据定义语言)
-
create(创建),drop(删除),alter(修改)
-
-
DML(数据操纵语言)
-
insert(插入),delete(删除),update(更新)
-
-
DQL(数据查询语言)
-
select(查询-表),show(显示-库),describe(描述-表结构)
-
-
DCL(数据控制语言)
-
grant(授予角色),revoke(取消授予),commit(提交),rollback(回滚)
-
grant授予的是角色(一组权限的集合)
-
commit
-
如果不加commit,执行的操作以及录入的数据会被放在缓冲区,提交后会写入磁盘。
-
-
rollback
-
将放在缓冲区的操作撤销,提交后的撤销不了
-
-
-
-
-
例
-
查询数据库,表,表结构
-
查询数据库
-
show databases
-
-
information_schema数据库:保存着关于MySQL服务器所维护的所有其他数据库的信息。如数据库名,数据库的表,表栏的数据类型与访问权 限等
-
performance_schema:用于监控MySQL server在一个较低级别的运行过程中的资源消耗、资源等待等情况
-
performance_schema:用于监控MySQL server在一个较低级别的运行过程中的资源消耗、资源等待等情况
-
-
-
-
查询数据表
-
show tables
-
-
-
查询表结构
-
describe 表名
-
-
-
-
创建与删除库,表
-
创建库
-
caeate database 库名;
-
create database auth;
-
-
-
创建表
-
因为表在库内,所以说要先决定在那个库内—use 库名;
-
create table 表名;
-
create table users (user_name char(16) not null, user_passwd char(48) default '', primary key (user_name));
-
default’‘
-
默认密码为空
-
-
密码经过加密算法后长度为41位。
-
-
-
-
删除库
-
drop database 库名;
-
drop database auth;
-
-
-
删除表
-
drop table 库名.表名;
-
drop table auth.users
-
-
-
-
管理表中的数据
-
先进入到表中use 表名;
-
插入数据记录
-
insert into 表名(列名与属性,列名与属性)values(’对应列的值‘,’对应列的值‘);
-
INSERT INTO users(user_name,user_passwd) VALUES('zhangsan', PASSWORD ('123456'));
-
-
-
查询数据记录
-
select * from 库名.表名;
-
*:标识查询所有数据
-
select * from auth.users
-
限定查询
-
select user_name,user_passwd FROM auth.users WHERE user_name='zhangsan';
-
-
-
-
修改(更新)数据记录
-
updata 库名.表名 set 修改项 where 修改哪一个值
-
updata auth.userss set user_passwd=password(’‘)where user_name=’lisi‘;
-
-
-
删除数据记录
-
delete from 库名.表名 where 列名=值
-
-
-
数据库高级操作
-
克隆表
-
create table user01 like auth.users;
-
通过 LIKE 方法,复制 users 表生成 tmp 表,注意,此表为空,仅复制架构。
-
-
insert into user01 select * from auth.users
-
用嵌套的方式将表信息复制到另一个表内。
-
-
-
删除表内的数据
-
delete from 表名 where 列名=值
-
-
删除表
-
delete from 表名
-
truncate table 表名
-
-
临时表
-
create temporary table 表名 (列名+属性,列名+属性)engine=INNODB default charset=utf8
-
临时表,退出重进之后就不存在 采用INNODB存储引擎。 默认采用字符集为utf8
-
-
-
-
数据库授权
-
grant select on 库名.表名 to ’账号‘@’登陆终端‘ identified by ’密码‘
-
查看授权
-
show grants for ’账号‘@’登陆终端‘
-
-
撤销授权
-
revoke all on 库名.表名 from ’账号‘@’登陆终端‘
-
-
-
-
以上就是对mysql数据库的简单管理。