1 """""" 2 """数据库概念""" 3 """ 4 经历阶段: 5 1.随意存到文件中 数据也是千差万别的 6 2.软件开发目录规范 7 规定了数据存放的位置 8 ps:数据都是保存到本地的 9 例:单机游戏 10 3.将保存数据的部分,保存到一个公共的位置 全部用户涉及到数据相关 ,都必须来这个公共地方查找 11 """
1 """""" 2 """数据库之MySQL""" 3 """ 4 本质就是一款基于网络通讯的应用软件 5 6 任何基于网络通讯的软件 底层都是socket 7 8 服务端: 9 -基于socket通讯 10 -收发消息 11 -SQL语句(一个公共的标准) 12 客户端: 13 -基于socket通讯 14 -收发消息 15 -SQL语句(一个公共的标准) 16 ps:MySQL不但支持MySQL的客户端来操做 也支持其余编程语言直接操做 17 python java c++ php 语法都不同 18 """ 19 """ 20 DBMS:数据库管理系统 21 关系型数据库: 22 ( 23 1.数据和数据之间是有关联和限制的 24 2.关系型数据库,一般都是表结构. 25 也就意味着你在用关系型数据库: 26 第一步:确认表结构, 27 28 字段有特定的类型 29 存名字 用字符串 30 存密码 用数据 31 存生日 用日期 32 ) 33 MySQL 34 oracle(贵,通常企业用不起,维修费10几万,用的都是国企,好处:特别安全) 35 sqlite 36 db2 37 sql 38 server 39 非关系型数据库: 40 ( 41 一般都是以k,v键值的形式存储数据(即:字典) 42 ) 43 redis(目前最火), 44 mongodb(文档型数据数据库:很是接近关系型数据库,应用爬虫):存的时候是字典 45 memcache(被mongodb取代) 46 47 """
1 """""" 2 """ 3 MySQL 其实能够把他当作一款支持远程操做文件的软件 4 """ 5 """ 6 库 >>> 文件夹 7 表 >>> 文件 8 记录 >>> 文件内一行行数据 叫作 一条记录 9 10 ps: 11 表头:就是表格的第一行数据 12 字段:字段名+字段类型 13 14 """
数据库本质.pngphp
下载mysql1.png前端
mysql下载2.pngjava
mysql下载3.pngpython
mysql下载4.pngmysql
mysql下载5.pngc++
1 """""" 2 """ 3 安装MySQL: 4 最新版本8.0 5 企业正在用5.5 5.6 5.7版本 6 在IT行业,不宜轻易尝试最新版本(除非老板有令) 7 8 9 下载以后 是将MySQL的服务端的客户端都下载了下载下来了 10 11 解压: 12 查看文件目录:E:\数据库\mysql-5.6.44-winx64 13 服务端: 14 mysqld 15 客户端: 16 mysql 17 启动mysql 18 E:\数据库\mysql-5.6.44-winx64 19 1.切换到 bin 目录下 20 2.执行mysqld 21 ps:作前期MySQL配置的时候 终端(cmd)建议你以管理员身份运行 22 23 windows + r 启动的普通用户 (启动cmd快捷键) 24 mysql在初始登陆的时候 是没有密码的 直接回车便可 25 26 mysql中 sql语句 是以分号(;)结束的 不敲分号 默认你没有输入完 27 客户端还会让你继续输入 28 """
1 """""" 2 """1.客户端登陆""" 3 """ 4 语法: 5 cmd: mysql -h+IP -P+PORT -u+用户名 -p+密码(密码通常不在这写,不安全); 6 Enter password:密码(这里写密码,不须要分号) 7 简写(本地): 8 mysql - u+用户名 -p 9 Enter password:密码 10 例: 11 cmd: mysql -h127.0.0.1 -P3306 -uroot -p 12 Enter password:llx20190411 13 14 ps:若是不输入用户名和密码 默认是访客模式登录 所能用到的功能不多 15 16 """ 17 """2.客户端退出登陆""" 18 ''' 19 exit; 20 quit; 21 ''' 22 """3.MySQL SQL 语句""" 23 """ 24 查看全部数据库: show databases; 25 查看某个进程: tasklist |findstr 名称 26 27 关闭进程(杀死进程): taskkill /F /PID 进程号 28 ps:注意间距,不然会报错 29 30 """
1 """""" 2 """1.制做环境变量""" 3 """ 4 将启动文件所在的路径添加到系统的环境变量. 5 6 ps:配置完成后 必定要从新启动 mysql 服务端 及 cmd终端 7 8 """ 9 """2.将mysqld制做成系统服务(即:mysqld是启动(自启)状态)""" 10 ''' 11 制做系统服务 你的 cmd终端 必定要是管理员身份(目的:避免后续的许多弊端和麻烦) 12 SQL语句: 13 # 装 14 cmd:mysqld --install 15 return(返回): Service successfully installed. 16 例: 17 E:\数据库\mysql-5.6.44-winx64\bin>mysqld --install 18 Service successfully installed. 19 ps:文件夹为中文时,在中文中跳转到指定目录下须要 +cd/中文文件夹: 20 # 删 21 C:\Windows\system32>sc delete mysql 22 [SC] DeleteService 成功 23 24 # 启动 25 C:\Windows\system32>net start mysql 26 请求的服务已经启动。 27 28 29 # 中止 30 C:\Windows\system32>net stop mysql 31 MySQL 服务正在中止. 32 MySQL 服务已成功中止。 33 '''
1 """""" 2 """修改管理员密码: 3 """ 4 """ 5 1.知道密码: 6 1)默认无密码: 7 SQL语句:mysqladmin -p(无密码) -u+用户 password + (中间须要有空格)新密码 8 2)有密码.密码修改 9 10 使用 mysqladmin 这个工具 11 12 SQL语句:mysqladmin -p+旧密码 -u+用户 password + (中间须要有空格)新密码 13 实例: 14 mysqladmin -pllx20190411 -uroot password llx20190412 15 16 17 C:\Windows\system32>mysqladmin -pllx20190411 -uroot password llx20190412 18 Warning: Using a password on the command line interface can be insecure. 19 2.忘记密码:即破解密码 20 现将已经启动的服务端停掉 21 22 1.跳过用户名和密码的验证功能启动服务端 23 mysql --skip-grant-tables 24 25 2.修改管理员用户对应的密码 26 update mysql.user set password=password("llx20190411") where user='root' and host='localhost'; 27 ps:password=password() 参数为密文, 整型不须要加字符串,英文须要加""转为字符串使用 28 3.关闭当前服务器 从新以校验用户密码的方式 29 4.正常以用户名密码的方式链接mysql服务端 30 31 32 """
2.启动服务器后,跳过受权表,即跳过密码.pngredis
1 """""" 2 """配置文件""" 3 """ 4 \s 查看 mysql服务端简单配置 5 一般状况下配置文件的简单后缀都是ini结尾 6 7 mysql自带的配置文件不要修改 8 可是你能够新建一个配置文件 my.ini 9 mysql 服务端 在启动就会自动加载你的my.ini配置文件内的配置 10 11 修改完 配置文件 以后 须要先将服务器中止从新启动 才会生效 12 13 修改了配置文件必定要重启服务器 14 """
1.查询配置文件.pngsql
2.解决服务端编码不一致问题.pngmongodb
3.经过新增配置文件修改编码方式成功.png数据库
4.新增配置文件替换编码方式 - 即设置mysql登陆快捷方式.png
1 """""" 2 """库: 相似于文件夹""" 3 """ 4 # 增 5 SQL语句: create database 数据库名; 6 例: 7 mysql> create database db11; 8 Query OK, 1 row affected (0.00 sec) 9 10 # 查 11 SOL语句: 查全部库: show databases; 12 例: 13 mysql> show databases; 14 +--------------------+ 15 | Database | 16 +--------------------+ 17 | information_schema | 18 | db1 | 19 | db11 | 20 +--------------------+ 21 13 rows in set (0.00 sec) 22 (单个)查指定库: show create database db11 23 24 例: 25 mysql> show create database db11; 26 +----------+---------------------------------------------------------------+ 27 | Database | Create Database | 28 +----------+---------------------------------------------------------------+ 29 | db11 | CREATE DATABASE `db11` /*!40100 DEFAULT CHARACTER SET utf8 */ | 30 +----------+---------------------------------------------------------------+ 31 1 row in set (0.00 sec) 32 33 # 改 34 SQL语句:alter database db11 charset='gbk'; # 修改编码方式 35 例: 36 mysql> alter database db11 charset='gbk'; 37 Query OK, 1 row affected (0.00 sec) 38 39 证实: 40 41 mysql> show create database db11; 42 +----------+--------------------------------------------------------------+ 43 | Database | Create Database | 44 +----------+--------------------------------------------------------------+ 45 | db11 | CREATE DATABASE `db11` /*!40100 DEFAULT CHARACTER SET gbk */ | 46 +----------+--------------------------------------------------------------+ 47 1 row in set (0.00 sec) 48 49 # 删 50 drop database db11; # 删库(跑路) 51 例: 52 mysql> drop database db11; 53 Query OK, 0 rows affected (0.12 sec) 54 验证: 55 mysql> show create database db11; 56 ERROR 1049 (42000): Unknown database 'db11' 57 """
1 """""" 2 """表:相似文件夹""" 3 ''' 4 在建立表的时候 须要 先 指定 库; 5 SQL语句: use 库名 # 指定库名 6 7 例: 8 mysql> use db11 9 Database changed 10 11 SQL语句: select database(); # 查询当前所在的库 12 mysql> select database(); 13 +------------+ 14 | database() | 15 +------------+ 16 | db11 | 17 +------------+ 18 1 row in set (0.00 sec) 19 ''' 20 """ 21 # 增 22 SQL语句:create table userinfo(id int,name char); 23 例: 24 mysql> create table userinfo(id int,name char); 25 Query OK, 0 rows affected (0.47 sec) 26 27 # 查 28 SQL语句: 29 show tables; # 查看某库下全部的表 30 31 例: 32 mysql> show tables; 33 +----------------+ 34 | Tables_in_db11 | 35 +----------------+ 36 | userinfo | 37 +----------------+ 38 1 row in set (0.00 sec) 39 40 SQL语句: 41 show create table userinfo; # 查看指定表 42 例: 43 mysql> show create table userinfo; 44 +----------+---------------------------------------------------------------------------------------------------------------------------+ 45 | Table | Create Table | 46 +----------+---------------------------------------------------------------------------------------------------------------------------+ 47 | userinfo | CREATE TABLE `userinfo` ( 48 `id` int(11) DEFAULT NULL, 49 `name` char(1) DEFAULT NULL 50 ) ENGINE=InnoDB DEFAULT CHARSET=utf8 | 51 +----------+---------------------------------------------------------------------------------------------------------------------------+ 52 1 row in set (0.00 sec) 53 54 SQL语句: 55 # 查询表结构 desc userinfo; <==> describe userinfo 56 例: 57 mysql> desc userinfo; 58 +-------+---------+------+-----+---------+-------+ 59 | Field | Type | Null | Key | Default | Extra | 60 +-------+---------+------+-----+---------+-------+ 61 | id | int(11) | YES | | NULL | | 62 | name | char(1) | YES | | NULL | | 63 +-------+---------+------+-----+---------+-------+ 64 2 rows in set (0.01 sec) 65 66 mysql> describe userinfo; 67 +-------+---------+------+-----+---------+-------+ 68 | Field | Type | Null | Key | Default | Extra | 69 +-------+---------+------+-----+---------+-------+ 70 | id | int(11) | YES | | NULL | | 71 | name | char(1) | YES | | NULL | | 72 +-------+---------+------+-----+---------+-------+ 73 2 rows in set (0.01 sec) 74 # 改 75 SQL语句:alter table userinfo modify name char(32) # 修改指定表的指定行的字节数 76 77 例: 78 mysql> alter table userinfo modify name char(32); 79 Query OK, 0 rows affected (0.62 sec) 80 Records: 0 Duplicates: 0 Warnings: 0 81 82 验证: 83 mysql> desc userinfo; 84 +-------+----------+------+-----+---------+-------+ 85 | Field | Type | Null | Key | Default | Extra | 86 +-------+----------+------+-----+---------+-------+ 87 | id | int(11) | YES | | NULL | | 88 | name | char(32) | YES | | NULL | | 89 +-------+----------+------+-----+---------+-------+ 90 2 rows in set (0.01 sec) 91 92 # 删 93 SQL语句:drop table userinfo; # 删掉指定表 94 例: 95 mysql> drop table userinfo; 96 Query OK, 0 rows affected (0.15 sec) 97 98 验证: 99 mysql> show create table userinfo; 100 ERROR 1146 (42S02): Table 'db11.userinfo' doesn't exist 101 """
1 """""" 2 """记录:相似一条条数据""" 3 ''' 4 1.先建立一个库|指定一个已存在的库 5 创库: create database 库名 6 切换到该库下: use 库名 7 2.建立表: create table 表名(列名1 类型1,...,列名n 类型n) 8 9 10 3.而后再操做记录 以下 11 ''' 12 """ 13 # 增 14 SQL语句:insert into userinfo values(1,'jason',123); # 插入单条数据 15 例: 16 mysql> insert into userinfo values(1,'llx',123); 17 Query OK, 1 row affected (0.34 sec) 18 19 SQL语句:insert into userinfo values(2,'llw',123),(3,'wyf',123); 20 例: 21 mysql> insert into userinfo values(2,'llw',123),(3,'wyf',123); 22 Query OK, 2 rows affected (0.37 sec) 23 Records: 2 Duplicates: 0 Warnings: 0 24 25 # 查 26 SQL语句:select * from userinfo; # 查看表中全部的记录: 27 例: 28 mysql> select * from userinfo; 29 +------+------+----------+ 30 | id | name | password | 31 +------+------+----------+ 32 | 1 | llx | 123 | 33 | 2 | llw | 123 | 34 | 3 | wyf | 123 | 35 +------+------+----------+ 36 3 rows in set (0.00 sec) 37 38 SQL语句:select 列名 from userinfo; # 查询表中指定列的数据 39 40 例: 41 mysql> select * from userinfo; 42 +------+------+----------+ 43 | id | name | password | 44 +------+------+----------+ 45 | 1 | llx | 123 | 46 | 2 | llw | 123 | 47 | 3 | wyf | 123 | 48 +------+------+----------+ 49 3 rows in set (0.00 sec) 50 51 SQL语句:select id name from userinfo where id=1 or name = 'wyf'; # 符合筛选条件的记录 52 例: 53 mysql> select * from userinfo where id = 1 or name = 'wyf'; 54 +------+------+----------+ 55 | id | name | password | 56 +------+------+----------+ 57 | 1 | llx | 123 | 58 | 3 | wyf | 123 | 59 +------+------+----------+ 60 2 rows in set (0.00 sec) 61 62 mysql> select id name from userinfo where id = 1 or name = 'wyf'; 63 +------+ 64 | name | 65 +------+ 66 | 1 | 67 | 3 | 68 +------+ 69 2 rows in set (0.00 sec) 70 # 改 71 SQL语句:update userinfo set name='llxdd' where id=1; # 修改一个字段信息 72 例: 73 mysql> update userinfo set name = 'llxdd' where id = 1; # 修改数据的多个字段 74 Query OK, 1 row affected (0.38 sec) 75 Rows matched: 1 Changed: 1 Warnings: 0 76 77 SQL语句:update userinfo set name='llwdd' and password=456 where id=2; 78 例: 79 mysql> update userinfo set name = 'llwdd'and password = 456 where id = 2; 80 Query OK, 1 row affected, 1 warning (0.36 sec) 81 Rows matched: 1 Changed: 1 Warnings: 1 82 83 # 删 84 SQL语句:delete from userinfo where id = 1; # 删除符合条件的指定字段 85 例: 86 mysql> delete from userinfo where id = 1; 87 Query OK, 1 row affected (0.10 sec) 88 89 SQL语句:delete from userinfo; # 将表中数据所有删除 90 例: 91 mysql> delete from userinfo; 92 Query OK, 2 rows affected (0.11 sec) 93 """
1 mysql 6day 这周周五-下周周五 周末写优酷 2 优酷 一周 3 前端 7天 4 Django 10天 5 bbs 5天 6 7 今日内容 8 01 数据库概念.mp4 9 02 数据库安装及基本使用.mp4 10 03 配置环境变量及制做系统服务.mp4 11 04 修改密码.mp4 12 05 破解密码.mp4 13 06 配置文件相关操做.mp4 14 07 库的增删改查.mp4 15 08 表的增删改查.mp4 16 09 数据的增删改查.mp4