MySQL基础:
http://www.cnblogs.com/wupeiqi/articles/5713315.html
http://www.cnblogs.com/wupeiqi/articles/5713323.html
索引补充:
http://www.cnblogs.com/wupeiqi/articles/5716963.html
练习题:
http://www.cnblogs.com/wupeiqi/articles/5729934.html
练习题答案:
http://www.cnblogs.com/wupeiqi/articles/5748496.html
DBMS;
程序文件结构:
bin
config
db (保存数据)
- users
- 123asdfasd.txt {用户名,密码,用户类型。。。}
- admin
- course
src
编程逻辑:
a.数据库在本地
1.找到目录
2.添加数据
b.数据库在远程
1.socket连接上远程机器
2.socker发送 {命令}
A.用户
程序 socket客户端
B.服务
socket服务端
C.语句规则
D.socket用户端和服务端认证、授权、限制
常见数据库:
Orcale 稳定(收费)
SQL Server 功能强大(收费)
MySQL 可选择社区版(免费) 商业版(收费)
sqlite access ...
MySQL
服务端 客户端
不同数据库大部分区别主要是操作语句不同
安装MySQL
1.下载安装压缩包 http://dev.mysql.com/downloads/mysql/
2.运行服务器端
进入bin/mysqld
添加data文件夹
mysqld --initialize-insecure 初始化
mysqld 运行服务端
3.运行客户端 链接sockte
进入bin/mysql
输入mysql -u root -p
登录格式
不需要输入密码 (因为我们初始化时 没有设置)
进入客户端
4.安装完成
修改环境变量 (重新直接启动mysql 和 mysqld)
制作windows服务 (mysqld)
# 制作MySQL的Windows服务,在终端执行此命令:
"c:\mysql-5.7.16-winx64\bin\mysqld" --install
# 移除MySQL的Windows服务,在终端执行此命令:
"c:\mysql-5.7.16-winx64\bin\mysqld" --remove
# 启动MySQL服务
net start mysql
# 关闭MySQL服务
net stop mysql
root用户创建的数据库 数据表 其他用户默认看不到
三、数据库操作
1、显示数据库
1
SHOW DATABASES;
默认数据库:
mysql - 用户权限相关数据
test - 用于用户测试数据
information_schema - MySQL本身架构相关数据2、创建数据库
1
2
3
4
5
# utf-8
CREATE DATABASE 数据库名称 DEFAULT CHARSET utf8 COLLATE utf8_general_ci;
# gbk
CREATE DATABASE 数据库名称 DEFAULT CHARACTER SET gbk COLLATE gbk_chinese_ci;
3、使用数据库
1
USE db_name;
显示当前使用的数据库中所有表:SHOW TABLES;
4、用户管理
1
2
3
4
5
6
7
8
9
10
创建用户
create user
'用户名'
@
'IP地址'
identified by
'密码'
;
删除用户
drop user
'用户名'
@
'IP地址'
;
修改用户
rename user
'用户名'
@
'IP地址'
; to
'新用户名'
@
'IP地址'
;;
修改密码
set password
for
'用户名'
@
'IP地址'
= Password(
'新密码'
)
PS:用户权限相关数据保存在mysql数据库的user表中,所以也可以直接对其进行操作(不建议)
5、授权管理
1
2
3
show grants
for
'用户'
@
'IP地址'
-- 查看权限
grant 权限 on 数据库.表 to
'用户'
@
'IP地址'
-- 授权
revoke 权限 on 数据库.表 from
'用户'
@
'IP地址'
-- 取消权限
all privileges 除grant外的所有权限 select 仅查权限 select,insert 查和插入权限 ... usage 无访问权限 alter 使用alter table alter routine 使用alter procedure和drop procedure create 使用create table create routine 使用create procedure create temporary tables 使用create temporary tables create user 使用create user、drop user、rename user和revoke all privileges create view 使用create view delete 使用delete drop 使用drop table execute 使用call和存储过程 file 使用select into outfile 和 load data infile grant option 使用grant 和 revoke index 使用index insert 使用insert lock tables 使用lock table process 使用show full processlist select 使用select show databases