一、简介
1.MySql是关系型数据库.
2.是一种开放源码软件,
3.是一种关联数据库管理系统.
4.服务器工作于客户端/服务端模式之下,或者是嵌入系统中.
数据库管理软件分类:
分两大类:
关系型:如db2,oracle,access,sql server,mysql, sql语句通用
关系型:mongodb,redis,memcache
可以简单地理解为关系型数据库需要有表结构,非关系型数据库是key-value存储的,没有表结构
二、数据库概述
1.什么是记录?
抽取事务一系列典型的特征,组成一条记录,在计算机中描述一个事物,相当于文件中的一行内容,单纯的一行记录没有什么意义,如果我们按逗号作为分割,依次定义各个字段意思,相当于定义了一张表,如图:
这样的话我们就知道具体数据的意思。
2.什么是数据表?
表就和上面的表格一样,下面还可以继续写入其他人的相关信息,最终保存为文件的形式,我们平时就可以理解数据表就是文件。
三、MySQL的安装
1.下载MySQL地址:http://dev.mysql.com/downloads/mysql/
2.解压,如果想要让MySQL安装在指定目录,那么就将解压后的文件夹移动到指定目录,如:D:\mysql-5.6.45-winx64
3.添加环境变量,
【右键计算机】--》【属性】--》【高级系统设置】--》【高级】--》【环境变量】--》【在第二个内容框中找到 变量名为Path 的一行,双击】 --> 【将MySQL的bin目录路径追加到变值值中】 配置完环境变量重启MySQL服务端和cmd终端 4.初始化 mysqld --initialize-insecure 5.启动MySQL mysqld # 启动服务端 6.启动MySQL客户端并连接MySQL服务 mysql -uroot -p # 连接MySQL服务器 为了不必要的麻烦,我们可以注册成服务,在我们启动服务器之前,在cmd终端输入mysqld --install,这样的话我们就会在本地服务注册成功,为了让大家相信注册成功与否,我们在运行窗口输入计算机管理,然后再点击服务与应用程序,再点击服务,最后在服务中查找MySQL即可。注册成功之后,以后再启动和关闭MySQL服务时,仅需执行如下命令。# 启动MySQL服务net start mysql# 关闭MySQL服务net stop mysql 登录,设置密码 在初始状态下,管理员root,密码为空,默认允许从本机登录localhost 在没有密码的情况下,我们可以用下面命令进行修改密码, set password for 'root'@'localhost' = password('你要修改的密码’); 在有密码的情况下: mysqladmin -uroot -p123 password 456 # 这样的话就将原来的密码123改为现在的密码456,这种情况是在退出客户端才能修改的,在客户端内不能进行修改。 当我们命令输入错误的时候 可以用\c来取消前面的命令。 破解密码 先手动去本地服务将已经启动的服务端停掉 1.跳过用户名和密码的验证功能,启动服务端 mysqld --skip-grant-tables 启动服务端,跳过授权表
2.重新以管理员的身份再次启动一个管理员窗口,输入登录命令,这样我们就会以没有密码的形式登录进来
3.修改管理员用户对应的密码
4.关闭当前服务端,重新以校验用户名和密码的方式启动
退出客户端后就行查杀,本人在这里错了好几次了,一定是在程序结束后进行查杀
5.启动服务端,重新进行登录
配置文件
\s 是查看MySQL服务端简单配置,通常情况下配置文件的后缀都是ini结尾,MySQL自带的配置文件不要修改,可以重新建一个ini结尾的配置文件,MySQL服务端在启动就会加载ini配置文件,修改完配置文件后需要将服务端停掉,重新启动。记住,新建配置文件一定要重启服务端
四、数据库的基本操作
库 ,我们可以把它简单的看成是一个文件夹
增 create database db1;
查 show create database db1; 查取单个建立的文件夹
改 alter database db1 charset='gbk'; 修改编码
删 drop database db1; 删库
表 在我们平时看来就是一个文件,在创建表的时候需要先指定库,指定库:use 库名 查看当前所在的库:select database();
增 create table userinfo(id int,name char);
查 show table; 查看某个库下面的所以表
show create table userinfo; 查看表中id 和 name
desc userinfo; 查看userinfo之下的列表
改 alter table userinfo modify name char(32);
删 drop table userinfo;
记录 先创建一个库或者指定一个已经存在的库,切换到该库下,创建表,然后再操作记录
create database db1;
create table userinfo(id int,name char(32),password int);
增 insert into userinfo values(1,'pan',123); 插入单条数据
insert into userinfo values(1,'pan'123),(2,'dan',456); 插入多条数据
查 select * from userinfo; 查询所有的字段信息
select name from userinfo; 查询指定字段信息
select id,name from userinfo where id=1 or name='pan'; 带有筛选条件的字段信息
改 update userinfo set name='sb' where id=1; 修改数据的一个字段信息
update userinfo set name='dsb',password=666 where id=1;修改数据的多个字段信息
删 delete from userinfo where id=1; 指定删符合条件的数据
delete from userinfo; 将表中的数据全部删除