标签:lang const 常见 终端 column roo python开发 相关 操作
1、什么是数据库 ?
 答:数据的仓库,如:在ATM的示例中我们创建了一个 db 目录,称其为数据库
2、什么是 MySQL、Oracle、SQLite、Access、MS SQL Server等 ?
 答:他们均是一个软件,都有两个主要的功能:
3、什么是SQL ?
 答:上述提到MySQL等软件可以接受命令,并做出相应的操作,由于命令中可以包含删除文件、获取文件内容等众多操作,对于编写的命令就是是SQL语句。SQL????????,是????????????????????????????结构化语言(Structured Query Language????????)的缩写,SQL????????????????????????????????是一种专门用来与数据库通信的语言。
MySQL是一个关系型数据库管理系统,由瑞典MySQL AB 公司开发,目前属于 Oracle 旗下公司。MySQL 最流行的关系型数据库管理系统,在 WEB 应用方面MySQL是最好的 RDBMS (Relational Database Management System,关系数据库管理系统) 应用软件之一。
想要使用MySQL来存储并操作数据,则需要做几件事情:
  a. 安装MySQL服务端
  b. 安装MySQL客户端
  b. 【客户端】连接【服务端】
  c. 【客户端】发送命令给【服务端MySQL】服务的接受命令并执行相应操作(增删改查等)
| 
 1 
2 
3 
4 
5 
6 
7 
8 
9 
 | 
下载        http://dev.mysql.com/downloads/mysql/安装        windows:            点点点        Linux:            yum install mysql-server        Mac:            点点点 | 
Window版本
1、下载
2、解压
如果想要让MySQL安装在指定目录,那么就将解压后的文件夹移动到指定目录,如:C:\mysql-5.7.16-winx64
3、初始化
MySQL解压后的 bin 目录下有一大堆的可执行文件,执行如下命令初始化数据:
4、启动MySQL服务
执行命令从而启动MySQL服务
5、启动MySQL客户端并连接MySQL服务
由于初始化时使用的【mysqld --initialize-insecure】命令,其默认未给root账户设置密码
输入回车,见下图表示安装成功:

到此为止,MySQL服务端已经安装成功并且客户端已经可以连接上,以后再操作MySQL时,只需要重复上述4、5步骤即可。但是,在4、5步骤中重复的进入可执行文件目录比较繁琐,如想日后操作简便,可以做如下操作。
a. 添加环境变量
将MySQL可执行文件添加到环境变量中,从而执行执行命令即可
如此一来,以后再启动服务并连接时,仅需:
b. 将MySQL服务制作成windows服务
上一步解决了一些问题,但不够彻底,因为在执行【mysqd】启动MySQL服务器时,当前终端会被hang住,那么做一下设置即可解决此问题:
注册成服务之后,以后再启动和关闭MySQL服务时,仅需执行如下命令:
 12345# 启动MySQL服务net start mysql# 关闭MySQL服务net stop mysql
Linux版本
安装:
| 
 1 
 | 
yum install mysql-server   | 
服务端启动
| 
 1 
 | 
mysql.server start | 
客户端连接
| 
 1 
2 
3 
4 
5 
6 
7 
 | 
连接:    mysql -h host -u user -p    常见错误:        ERROR 2002 (HY000): Can‘t connect to local MySQL server through socket ‘/tmp/mysql.sock‘ (2), it means that the MySQL server daemon (Unix) or service (Windows) is not running.退出:    QUIT 或者 Control+D | 
1、显示数据库
| 
 1 
 | 
SHOW DATABASES; | 
默认数据库:
  mysql - 用户权限相关数据
  test - 用于用户测试数据
  information_schema - MySQL本身架构相关数据
2、创建数据库
| 
 1 
2 
3 
4 
5 
 | 
# utf-8CREATE DATABASE 数据库名称 DEFAULT CHARSET utf8 COLLATE utf8_general_ci;# gbkCREATE 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地址‘      -- 取消权限 | 
 对于权限
 对于数据库
 对于用户和IP
 示例特殊的:
| 
 1 
 | 
flush privileges,将数据读取到内存中,从而立即生效。 | 
 忘记密码1、创建表
| 
 1 
2 
3 
4 
 | 
create table 表名(    列名  类型  是否可以为空,    列名  类型  是否可以为空)ENGINE=InnoDB DEFAULT CHARSET=utf8 | 
 是否可以为空
 默认值
 自增
 主键
 外键2、删除表
| 
 1 
 | 
drop table 表名 | 
3、清空表
| 
 1 
2 
 | 
delete from 表名truncate table 表名 | 
4、修改表
| 
 1 
2 
3 
4 
5 
6 
7 
8 
9 
10 
11 
12 
13 
14 
15 
16 
17 
 | 
添加列:alter table 表名 add 列名 类型删除列:alter table 表名 drop column 列名修改列:        alter table 表名 modify column 列名 类型;  -- 类型        alter table 表名 change 原列名 新列名 类型; -- 列名,类型  添加主键:        alter table 表名 add primary key(列名);删除主键:        alter table 表名 drop primary key;        alter table 表名  modify  列名 int, drop primary key;  添加外键:alter table 从表 add constraint 外键名称(形如:FK_从表_主表) foreign key 从表(外键字段) references 主表(主键字段);删除外键:alter table 表名 drop foreign key 外键名称  修改默认值:ALTER TABLE testalter_tbl ALTER i SET DEFAULT 1000;删除默认值:ALTER TABLE testalter_tbl ALTER i DROP DEFAULT; | 
5、基本数据类型
MySQL的数据类型大致分为:数值、时间和字符串
 View Code二进制数据:TinyBlob、Blob、MediumBlob、LongBlob
更多参考:
1、增
| 
 1 
2 
3 
 | 
insert into 表 (列名,列名...) values (值,值,值...)insert into 表 (列名,列名...) values (值,值,值...),(值,值,值...)insert into 表 (列名,列名...) select (列名,列名...) from 表 | 
2、删
| 
 1 
2 
 | 
delete from 表delete from 表 where id=1 and name=‘alex‘ | 
3、改
| 
 1 
 | 
update 表 set name = ‘alex‘ where id>1 | 
4、查
| 
 1 
2 
3 
 | 
select * from 表select * from 表 where id > 1select nid,name,gender as gg from 表 where id > 1 | 
5、其他
标签:lang const 常见 终端 column roo python开发 相关 操作
原文地址:https://www.cnblogs.com/caidapeng/p/10469434.html