一、SQL语句
SQL结构化查询语句,为数据库而建立的操作命令集。
1、SQL语句规范
- 在数据库系统中,SQL语句不区分大小写(建议用大写),但字符串的常量区分大小写,建议命令大写,表名和库名小写;
- SQL语句可单行或者多行书写,最后以英文分号;结尾;
- 单行注释:--
- 多行注释:/*...*/
2、SQL语句分类
- DDL数据定义语言,负责数据库定义,数据库对象定义,由CREATE、ALTER与DROP三个语法所组成。
- DML数据操作语言,负责对数据库对象的操作,CRUD增删改查。
- DCL数据控制语言,负责数据库权限访问控制,由GRANT和REVOKE两个指令组成。
- TCL事物控制语言,负责处理ACID事物,支持commit、rollback指令。
二、MySQL数据库
1、数据库安装
首先安装mysql,安装之前需要配置yum源(我配置的是阿里的源):
yum install mysql-server
然后启动服务:
service mysqld start
第一次需要配置root密码:
mysqladmin -u root password "mysql"
进入数据库:
mysql -uroot -pmysql
2、数据库操作
(1)显示数据库
show databases;
(2)创建数据库
create database 数据库名称 default charset 字符集 collate 字符排序方式;
create database test1 default charset utf8 collate utf8_general_ci;
(3)删除数据库
drop database test1;
(4)使用数据库
进入数据库:
use test;
查看当前数据库中所有的表:
show tables;
查看当前正在使用的数据库:
select database();
(5)用户管理
查看当前已经授权的用户:
use mysql
select host,user from user;
创建一个用户:
create user '用户名'@'IP地址' identified by '密码';
create user "wj"@"%" identified by "wj";
%代表所有的ip都可以访问,这样做要考虑安全性的问题
删除已授权的用户:
drop user "wj"@"%";
修改已授权用户的用户名和Ip:
rename user "wj"@"%" to "wangjie"@"127.0.0.1";
修改用户密码:
set password for "wangjie"@"127.0.0.1" = Password("wangjie");
(6)授权管理
查看权限:
show grants for "wangjie"@"127.0.0.1";
授权用户权限:
grant select on *.* to "wangjie"@"127.0.0.1"; # 查权限,*.*表示所有数据库的所有表
grant all privileges on *.* to "wangjie"@"127.0.0.1"; # 所有权限,权限过大需要考虑安全性问题
取消权限:
revoke select on *.* from "wangjie"@"127.0.0.1";
revoke all privileges on *.* from "wangjie"@"127.0.0.1";