MySQL是一个关系型数据库管理系统,由瑞典MySQL AB 公司开发,目前属于 Oracle 旗下公司。MySQL 最流行的关系型数据库管理系统,在 WEB 应用方面MySQL是最好的 RDBMS (Relational Database Management System,关系数据库管理系统) 应用软件之一。
- MySQL就是一个基于socket编写的C/S架构的软件
- 客户端软件
- MySQL自带:如MySQL命令,MySQL dump命令等
- python模块:如pymysql
- 1.3.2数据库管理软件分类
- # 分两大类:
- 关系型:如sqllite,db2,oracle,access,sql server,MySQL,注意:sql语句通用
- 非关系型:mongodb,redis,memcached
-
- # 可以简单的理解为:
- 关系型数据库需要有表结构
- 非关系型数据库是key-value存储的,没有表结构
-
安装
- #1、下载:MySQL Community Server 5.7.16
- http://dev.mysql.com/downloads/mysql/
-
- #2、解压
- 如果想要让MySQL安装在指定目录,那么就将解压后的文件夹移动到指定目录,如:C:\mysql-5.7.16-winx64
-
- #3、添加环境变量
- 【右键计算机】--》【属性】--》【高级系统设置】--》【高级】--》【环境变量】--》【在第二个内容框中找到 变量名为Path 的一行,双击】 --> 【将MySQL的bin目录路径追加到变值值中,用 ; 分割】
-
- #4、初始化
- mysqld --initialize-insecure
-
- #5、启动MySQL服务
- mysqld # 启动MySQL服务
-
- #6、启动MySQL客户端并连接MySQL服务
- mysql -u root -p # 连接MySQL服务器
- 上一步解决了一些问题,但不够彻底,因为在执行【mysqd】启动MySQL服务器时,当前终端会被hang住,那么做一下设置即可解决此问题:
-
-
-
- 注意:--install前,必须用mysql启动命令的绝对路径
- # 制作MySQL的Windows服务,在终端执行此命令:
- "c:\mysql-5.7.16-winx64\bin\mysqld" --install
-
- # 移除MySQL的Windows服务,在终端执行此命令:
- "c:\mysql-5.7.16-winx64\bin\mysqld" --remove
-
-
-
- 注册成服务之后,以后再启动和关闭MySQL服务时,仅需执行如下命令:
- # 启动MySQL服务
- net start mysql
-
- # 关闭MySQL服务
- net stop mysql
- 服务端需要设置密码,然后让客户端通过用户名和密码进行登录
-
- # 默认情况下,初次安装成功,链接是不需要密码的如何给管理员
-
- 设置密码mysqladmin -u 用户名 -p 旧密码 password 新密码
-
- # 修改管理员密码也是这个命令mysqladmin -u root -p password 123
- # 管理员就具备了密码客户端在链接的时候需要使用密码链接:mysql -u root -p
- # 链接的是本地的MySQL# 完整的链接命令mysql -h 127.0.0.1 -P 3306 -u root -p
-
- 如果不用root登录就是游客模式,权限比较低,没有root用户的权限高,一般功能首先,就是只能查看,不能操作
- 忘记密码就需要修改密码
- 修改密码的步骤
-
- 1. 关闭服务端
- 2. '跳过授权表'的形式启动服务端
- '跳过授权表' >>>: 意味着以后客户端来链接服务端的时候,只需要用户名,不在验证密码
-
- 3. 如何跳过授权表
- mysqld --skip-grant-tables
- 4. 跳过授权表成功之后,修改管理员的密码
- update mysql.user set password=password('1234') where Host='localhost' and User='root';
- """课下把这个修改的过程练习3遍!!!"""
- """补充几个重要的概念"""
- 库 >>> 文件夹
-
-
- 表 >>> 文件
-
-
- 记录 >>> 文件中得一行行数据
-
-
- 字段 >>> id name age gender 其实就表的表头
-
- id name age gender
- 1 ly 20 female
- 1 ly 20 female
- 1 ly 20 female
- 1 ly 20 female
-
- """顺序是: 库 >>> 表 >>> 记录 >>> 字段"""
- 一个库中可以有多张表,一个表中可以有很多条记录,也可以有多个字段
-
- """在MySQL中,SQL语句都是要以分号结尾;"""
- 1. 针对库的SQL语句
- # 增加
- create database 库名;
-
- # 查看库
- show databases;
- show create database db1;
-
- # 修改库(基本上不用,直接删掉直接创建)
- alter database db1 charset='utf8';
-
- # 删库跑路
- drop database db1; # 不要轻易使用(测试环境随便使用,线上环境一般情况下你是没有权限)
-
- 2. 针对表的SQL语句
- """如何选择库"""
- use 库名;
- use db1; # 双击db1文件夹了
-
- # 增加表
- create table 表名 (id 数据类型, name 数据类型, gender 数据类型)
- create table t1(id int, name varchar(32), gender varchar(32));
-
- # 修改表
- alter table t1 rename t2; # 修改表名
- # 查看表
- show tables;
- show create table t1; # 查看表结构
- desc t1; # 查看表结构,格式化了
- # 删除表
- drop table t2;
END