Linux学习笔记<三十三>――MySQL基础

DBMS的功能:

数据管理独立性

有效地完成数据存取

数据完整性和安全性

数据集中管理

并发存储与故障恢复

减少应用程序发开时间


RDBMS(关系型数据库系统)

1.数据库的创建、删除、修改

2.创建表、删除表、修改表

3.索引的创建、删除

4.用户和权限的管理

5.数据增、删、改

6.查询


数据库的三种语言+SELECT

DML:Date Manapulate Languages:数据操作语言

INSERT,REPALCE,UPDATE,DELETE

DDL:Data Defination Languages:数据定义语言

CREATE,ALTER,DROP

DCL:Data Control Language:数据控制语言

GRANT,REVOKE

SELECT


RDBMS软件

Oracle,Sybase,Infomix(IBM收购了),SQL Server,DB2(IBM) 闭源

MySQL,PostgreSQL(pgsql),EnterpriseDB 开源

    MySQL --> Percona(MySQL二次发行)

    MySQL --> MariaDB(MySQL二次发行)


反关系模型:NoSQL  是一种技术

MongoDB

Redis

HBase


MySQL软件包格式

软件包管理器特有的格式

rpm包,.exe,.msi

通用二进制格式

源程序


MySQL二进制程序

客户端mysql

服务器端mysqld

    tcp/3306端口监听,mysql用户,mysql组运行

    /var/lib/mysql/     rpm包默认数据文件目录


MySQL命令

mysql

-u USERNAME :默认root

-p PASSWOED:默认空密码

-h HOSTNAME:默认localhost


mysql客户端:

交互式模式

批处理模式

执行mysql脚本


交互式模式中的命令类型:

客户端命令

服务器端命令

都必须使用语句结束符,默认为分号;



关系数据库对象

索引

视图

约束

存储过程

存储函数

触发器

游标

用户


权限

事务


表属性定义格式

字段名称,数据类型,类型修饰(约束)

 

数据类型 

  字符

CHAR(n):存的字符长度为n  最多存256个字符

VARCHAR(n):存的字符长度为实际长度+1,最多能存65536个字符

BINARY(n):区分大小写的

VARBINARY(n):

TEXT(n):

BLOB(n):区分大小写

  数值

精确数值

整型

TINYINT:1个字节

SMALLINT:2个字节

MEDIUMINT:3个字节

INT:4个字节

BIGINT:8个字节


修饰符:UNSIGNED,无符号

NOT NULL,非空

十进制

DECIMAL

近似数值

浮点型

FLOAT

DOUBLE

  日期时间

DATE

TIME

DATETIME

STAMP

  布尔

  内置 ENUM, SET


MySQL命令格式:

创建数据库

CREATE DATABASE db_name;

CREATE DATABASE IF NOT EXISTS db_name;


删除数据库

DROP DATABASE db_name;


创建表

CREATE TABLE tb_name(colum1,colum2,...);

查看库中的表:SHOW TABLES FROM da_name;

查看表的结构:DESC tb_name;


删除表

DROP TABLE tb_name;


修改表

ALTER TABLE tb_name

MODIFY

CHANGE old_col_name new_col_name:改属性名称

ADD

DROP col_name

修改表内容

INSERT INTO tb_name (col1,col2,...) VALUES|VALUE ('string',NUM,...);

INSERT INTO tb_name (col1,col2,...) VALUES|VALUE ('string1',NUM1,...),('string2',NUM2,...)

REPLACE INTO


UPDATE tb_name SET col_name=value where CONDITION;

DELETE FROM tb_name WHERE CONDITION;


查找

SELECT 字段 FROM tb_name WHERE CONDITION;

*: 所有字段

WHERE:没有条件表示显示所有行;


创建用户

CREATE USER 'USERNAME'@'HOST' IDENTIFIED BY 'PASSWORD';


删除用户

DROP USER 'USERNAME'@'HOST';

HOST:

IP;

HOSTNAME;

NETWORK;

通配符

_:匹配任意单个字符,192.168.66._

%:匹配任意字符

jerry@'%'


授权和撤销权限

GRANT pri1,pri2,...(ALL PRIVILEGES:全部权限) ON db_name.tb_name TO                'USERNAME'@'HOST' [IDENTIFIED BY 'PASSWORD'];

REVOKE pri1,pri2,... ON db_name.tb_name FROM 'USERNAME'@'HOST';


查看用户的授权:SHOW GRANIS FOR 'USERNAME'@'HOST';


为用户设定密码:

1、mysql> SET PASSWORD FOR 'USERNAME'@'HOST'=PASSWORD('password');

   mysql> FLUSH PRIVILEGES;

2、# mysqladmin -uroot -hHOST -p password 'password'

3、mysql> UPDATE user SET Password=PASSWORD('password') WHERE User='root' AND Host='127.0.0.1';

   mysql> FLUSH PRIVILEGES;


mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'192.168.60.%' IDENTIFIED BY 'chenqiyi666';

mysql> FLUSH PRIVILEGES;


图形客户端:

1、phpMyAdmin

    使用方法:确保安装上了php53-mysql下载phpMyAdmin源码包

            解压到httpd工作目录并重命名为xxx

          Web访问"站点/xxx"即可使用

2、Workbench

3、MySQL Front

4、Navicat for MySQL

5、Toad


你可能感兴趣的:(mysql,Linux学习)