mysql数据库开发
基础概念
1.数据:描述事物特征的符号,属性
2.数据库的概念:管理计算机中的数据的仓库
2.记录: 一系列典型的特征
3.表:文件
4.库:文件夹
5.数据库管理软件:mysql oracle,db2,sqlserver
6.数据库服务器:运行数据库管理软件的计算机
7.mysql是一个基于socket编写的c/s架构的软件
数据库管理软件
分类
关系型:sqllite db2,oracle sqlserver. mysql
就是一个个表结构组成的,表结构就是由一些字段(属性)+约束条件+数据类型组成的
非关系型:mongdb redis
2.非关系型:mongdb redis
没有表的结构,
存储方式
关系型:二维表的形式
非关系型:key:value
安装
1.linux版本
2.windows版本
安装方式:图形化指导安装,命令形式安装
选择版本:5.5 ,5.6,尽量不安装8版本的,坑
基本是点默认。
如果最后配置安装的时候,开启启动服务停留了很久,
出现的原因是:之前安装的mysql的配置文件没有删除干净以及mysql服务注册表没有删除,
解决办法:
mysql数据配置文件默认在c:programdatamysql 将这个删除干净,包括空文件也要删除
注册表的事情,就不要乱动了。。后面再试试重新安装一个mysql,
步骤只到安装完成,后面配置部分就不要点了,我们手动配置系统服务
进入cmd
输入 mysqld --install mysql55 这是生成一个系统服务名字叫mysql55
然后 net start mysql55 开启mysql服务
以root登录mysql 直接回车进入无需密码,通过mysql.user表来添加密码
mysql启动登录
1.win+r 打开搜索框 输入cmd (这只是普通用户登录打开cmd与上述cmd打开方式不同)
2.然后输入 mysql
3.然后输入密码 (root用户默认没密码直接回车)
密码设置
一开始没有设置密码所以需要设置
第一种:不用登录进mysql
win+q 搜索cmd 选中命令提示符右击管理员登录。
输入指令:mysqladmin -uroot -p password 123456
上述命令参数说明:-u 指用户 -p指密码
上述指令意思:以root用户登录 设置密码为123456
第二种:以root用户登录mysql
先登录mysql,修改mysql数据库中的表user的用户的密码
指令:update user set password=password('123456') where user=root;
指令解释:修改表设置user为root的记录的密码为123456
修改密码
(建议第二种方法)
第一种不登陆mysql:
修改密码指令:mysqladmin -uroot -p123456 password 123abc;
上述指令意思:以root用户登录将密码123456修改为123abc
第二种登录mysql:
方法:修改mysql数据库中表user
指令:update user set password=password('newmima') where user=root;
如果密码忘记怎么办?
windows下
1.彻底删除mysql(暴力)
卸载mysql~~~~
2.绕开权限表登录(合理)
绕开权限表登录,然后进入到mysql之后,设置密码
(1)绕开权限表:
管理员进入cmd:
先停止当前mysql服务输入指令net stop mysql
然后绕过权限表:mysqld --skip -grant-tables
(2)之后打开一个新的cmd管理员身份登录 mysql
输入指令: mysql 回车就能直接登录进入mysql
输入指令通过修改数据库中的表设置密码:(登录进mysql后每一条指令输完后要加分号,表示该指令结尾)
update mysql.user set password=password(‘123456’) where root and host=“localhost”;
为什么不直接password=”123456“呢 而用password=password(‘123456’)这是因为放入到数据库中的密码不能是明文的,而是要加密的。所以使用他自带的函数password()
刷新权限:flush privileges;
(3)杀死绕开权限表的进程,这样我们才能以正常方式登录
管理员身份进入cmd
输入指令:tasklist |findstr mysql 查询mysql进程
杀死进程输入指令:taskkill /f /pid 32312
上述指令参数说明: /f 表示强制 /pid表示进程号 后面32312是tasklist |findstr mysql查询得到的进程号
(4)启动mysql服务
进入cmd 输入:net start mysql
(5)mysql -uroot -p 再输入密码就可以进入了
查看数据库文件存放的物理位置
show global variables like “%datadir%”;
sql(structed query language)结构化查询语言
分类
1.ddl数据定义语言
操作对象:数据库,表,视图等
2.dcl数据控制语言
操作对象: 表内的内容
操作:增 删 修改
3.dml数据操纵语言
对数据库进行一些事务管理等:
比如授权。
4.dql数据查询语言
操作对象:数据。
操作:查询
数据的curd操作
操作数据库(文件夹)
(记住几个关键字就可以了)
curd操作
增(create)
create database db1 charset utf8;
删除(delete)
drop database db1;
改(alter)
alter datbase charset gbk;
查(retrieve)
show databases;(显示数据库有哪些)
show create database db1;(查看当前创建的数据库db1)
操作表(文件)
选择数据库
use db1;
增加(create)
create table tb1(
sid int unsigned not null primary key auto_increment,
name varchar(20) not null,
age tinyint not null
);
删除(delete)
drop table tb1;
改
修改表的字段名: alter table change id sid int unsigned not null primary key;
查(retrieve)
show tables;//显示所有的表
show create table tb1;
desc tb1;
操作数据
增
insert into tb(id,name)values(1,‘zc’),(2,‘ls’);
删
delete from tb where id=1;
改
update *from tb where id=1;
查
select *from tb ;//查询整个表内的所有数据
存储引擎的介绍
什么是存储引擎?
create table t1(id int)engine=innnodb;
就是控制管理表的类型,不同的引擎对于表的类型是有不同定义的,存储引擎帮助管理存储在数据库中的数据
数据操作
约束
概念:对数据进行一些约束,保证数据的正确性和完整性
有四类:
1.主键约束 primary key
2.非空约束 not null
3.唯一约束 unique
4.外键约束 foreign key
Magma推出面向大型SoC的增强版层次化设计规划解决方案
MAX5703-MAX5705低功耗电压输出DAC
CAN总线信号传输位定时与位同步是如何实现的
无线传感器网络技术有哪些好处
智能安防三大新趋势
MySQL数据库如何安装和使用说明
立体仓库是什么,有哪些特点
余压监控系统将会成为“智慧消防”领域中的一把利器
清越科技:硅基OLED产品已向客户批量出货
功率因数偏低如何解决 功率因数和有功功率无功功率的关系
松下与Tesla联合开发新一优锂离子电池技术
abb变频器制动斩波器故障分析
台积电董事长张忠谋表示不排除赴美设厂
小米11新机即将发布:搭载骁龙875处理器
苹果新专利曝光 视频会议自动模糊敏感信息
AMD或发布优化改良版锐龙3000系列 升级12nm Zen+架构且频率有所提升
iPhone8即将来临 苹果这次准备干一票大的?
加速碳中和研究进展已成为电力能源领域的主要趋势
OLED需求放缓 三星并未受益
小米米家电水壶1A即将开卖,1800W大功率聚能加热环发热