什么是数据库?
数据库是存放数据的地方。正是因为有了数据库后,我们可以直接查找数据。例如你每天使用余额宝查看自己的账户收益,就是从数据库读取数据后给你的。
有人可能会说,数据放在自己的电脑的excel表里就可以了,为什么还要搞个数据库呢?
这是因为数据库比excel有更多的优势。数据库可以存放大量的数据,允许很多人同时使用里面的数据。
举个例子你就明白了,excel好比是一个移动硬盘,你使用了这个移动硬盘其他人就用不了了。
数据库好比是网盘,很多人可以同时访问里面里的数据。
而且网盘比移动硬盘能放更多的数据。
数据库的分类
数据库分为关系型数据库和非关系型数据库
关系型数据库是一个结构化的数据库,创建在关系模型(二维表格模型)基础上,一般面向于记录。
主流的关系型数据库包括 Oracle、MySQL、SQL Server、Microsoft Access、DB2 等
主流的非关系型数据库有 Redis、MongBD、Hbase、CouhDB 等。
关系数据库是由多个表组成的。如果你用过Excel,就会知道Excel是一张一张的二维表。每个表都是由行和列组成的。
表的结构是指要了解关系数据库中每张表长什么样。
每个表由一个名字标识。表包含带有列名的列,和记录数据的行。
MySQL数据库
MySQL是一个开源的关系型数据库管理系统,常用于Web应用程序的后端数据存储。它支持多种操作系统和编程语言,具有高性能、可靠性和可扩展性等特点。
MySQL安装
-
下载MySQL前往MySQL官网(MySQL :: Download MySQL Community Server (Archived Versions))下载适用于您操作系统的MySQL安装包。
-
安装MySQL按照安装包提示,安装MySQL数据库,并根据需要进行配置。
# 1 将下载的压缩包解压 # 2 在bin目录同级下创建一个文件,命名为my.ini # 3 在bin目录同级下创建一个文件夹,命名为data
3. 编辑配置文件my.ini
[mysqld]
# 设置3306端口
port=3306
# 设置mysql的安装目录 ---这里输入你安装的文件路径----
basedir=D:\mysql-8.0.28-winx64\mysql-8.0.28-winx64
# 设置mysql数据库的数据的存放目录
datadir=D:\mysql-8.0.28-winx64\mysql-8.0.28-winx64\data
# 允许最大连接数
max_connections=200
# 允许连接失败的次数。
max_connect_errors=10
# 服务端使用的字符集默认为utf8
character-set-server=utf8
# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB
# 默认使用“mysql_native_password”插件认证
default_authentication_plugin=mysql_native_password
[mysql]
# 设置mysql客户端默认字符集
default-character-set=utf8
[client]
# 设置mysql客户端连接服务端时默认使用的端口
port=3306
default-character-set=utf8
主要文件介绍
bin文件夹,主要放置启动文件。
1. mysql.exe自带的客户端
2. mysqld.exe自带的服务端
data:MySQL的数据存储的地方
my-default.ini:这个是MySQL的配置文件
README文件是MySQL的说明文件,类似于是说明书
MySQL使用
mysqld.exe是服务端,应该先启动这个文件, 这里不能双击了,需要通过cmd的方式启动
MySQL服务
如何查看服务
1. 在任务栏里打开任务管理器------>服务
2. 点击此电脑------>管理------->服务
3. win + R------->services.msc----------->服务
制作MySQL服务
安装mysql 安装完成后Mysql会有一个随机密码(记住这个密码)
mysqld --initialize --console
mysqld --install(需要管理员权限) # Service successfully installed.
第一次安装成功服务是没有启动的,需要手动启动一次。
启动服务
1. 直接点击启动------>mysqld------>服务端就不需要在打开cmd启动了---->后台工作
2. 命令启动
net start mysql # 启动服务的 (需要管理员权限)
3. 关闭服务
net stop mysql # 停止服务 (需要管理员权限)
如何卸载服务以及安装服务
mysqld --remove
mysqld --install
卸载服务的时候一定要先关闭服务!
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';
基本的SQL语句的使用
在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;