MySQL 数据库
1.数据库分类
数据库的本质就是一款cs架构软件
数据库相关软件
关系型数据库:
固定的表结构并且表与表之间可以建立关系,类似excel
常见的软件有MySQL,Postgraduate,sqlite、db2、oracle、access、sql server
非关系型数据库:
没有固定表结构并且储存数据使用kv键值对的方式
常见软件:mongodb,redis,memcache
2,MySQL数据库简介
本质也是一款基于网络通信的应用程序
也就是说 如果你牛逼你也可以开发一个属于自己的数据库软件,
如何基于网络通信的软件底层肯定都是socket
-服务端
基于socket通信
本地文件操作
解析指令(SQL语句)
客户端
基于socket通信
发送指令
解析指令(SQL语句)
SQL语句的由来
MySQL不单单支持MySQL客户端操作也支持其他编程语言来操作
python,Java,c++、go的语法都不一样,那么MySQL如何做到兼容的呢?
两种解决语言障碍的思路
1、自己精通多国语言,轻松自如的切换
2、采用统一的语言(sql语句)
重要的概念介绍
库 >>> 文件夹
表 》》》 文件
记录》》》文件内一行行的数据
表头》》 表格的第一行数据
字段 表格的第一行数据
字段 字段名+字段类型
下载与安装
1,版本问题
5.6
5.7
5.8
#it领域不会轻易的采用最新版本的软件
2.下载问题
直接去MySQL官网下载
解压数据包到固定地址
简单启动
MySQL.exe 客户端
MySQLd.exe 服务端
系统服务
1环境变量添加
直接到计算机属性,高级系统设置,环境变量,里面添加
2.系统服务制作(全部在管理员身份下操作)
#查看系统服务
services.msc
制作成系统服务
mysqld --install
#取消系统服务
mysqld --remove
启动服务
net start mysql
停止服务
not stop mysql
用户登录
mysql -u用户名 -p密码 #管理员首次登录无需密码
#mysql游客模式
忘记密码
方法1 #这个方法不会在公司内使用还是用方法2 直接跟数据库管理的人说就行
1跳过授权表启动
mysqld --skip-grant-tables
2无密码登录
mysql -uroot -p
3。修改用户密码
update mysql.user set password(123) where user="root" and host="localhost"#修改用户密码
4.正常退出
配置文件
MySQL默认配置文件my-default.ini不能修改
拷贝并重命名 my.ini
#\s查看基本信息
文件内容
[mysqld]
character-set-server=utf-8_general_ci
[client]
default-charcter-set=utf-8
[mysql]
default-character-set=utf-8
基本SQl语句
库
基本上命令里每一句都要用 ;结尾
增
create database db1 charset='utf-8';
改
alter database db1 charset="gbk";
查
show databases;
show create database db1;
删
drop database db1;
表
user db1;#切换文件夹
select database();查看当前所在的库
增
create table t1(id int,name char(4));#创建出来的肯是多个文件,解耦管理
改
alter table t1 modify name char(16)
查
show tables;
show create table t1;
describe t1;==desc t1;#查看表结构
删
drop table t1;
标记
增
insert into db1.t1 values(1,'tom'); # 单条数据
insert into db1.t1 values(2,'tom'),(3,'tony'),(4,'jason');#多条数据
改
update db1.t1 set name='DSB' where id>1;
update db1.t1 set name='DSB' where id = 2 or id = 3;
查
select id,name from db1.t1;#db1不可指定,默认当前库下
select * from t1;
删
delete from db1.t1 where id >3;
delete from db1.t1 where name='jason';
delete from db1.t1; #将整个t1表全部删除

浙公网安备 33010602011771号