目录
1.数据库介绍
1.1什么是数据库
2.MySQL服务器安装
2.1Windows绿色安装
2.2Windows中重装MYSQL
3.Mac中常见的安全问题
4.客户端连接MYSQL服务器
5.SQL的分类
1.数据库介绍
1.1什么是数据库
文件保存数据有以下的缺点:
- 文件的安全性问题。
- 文件不利于数据查询和管理。
- 文件不利于存储海量数据。
- 文件在程序中控制不方便。
数据库存储介质:磁盘+内存。
为了解决上述问题,专家们设计出更加利于管理数据的软件——数据库,他能更加有效的管理数据。数据库可以提供远程服务,即通过远程连接来使用数据库,因此也称为数据库服务器。
1.2数据库分类
1.关系型数据库(RDBMS):
是指采用了关系模型来组织数据的数据库。简单来说,关系模型指的就是二维表格模型,而一个关系型数据库就是由二维表及其之间的联系所组成的一个数据组织。
基于标准的SQL,只是内部一些实现有区别。常用的关系型数据库如:
- Oracle:甲骨文产品,适合大型项目,适用于做复杂的业务逻辑,如ERP、OA等企业信息系统。收费。
- MySQL:属于甲骨文,不适合做复杂的业务。开源免费。
- SQL Sever:微软的产品,安装部署在Windows server上,适用于中大型项目。收费。
2.非关系型数据库:
不规定基于SQL实现。现在更多是指NoSQL数据库,如:
- 基于键值对(Key-Value):如memcached、redis
- 基于文档型:如mongodb
- 基于列族:如hbase
- 基于图型:neo4j
关系型数据库 | 非关系型数据库 | |
---|---|---|
使用SQL | 是 | 不强制要求,一般不基于SQL实现 |
事务支持 | 支持 | 不支持 |
复杂操作 | 支持 | 不支持 |
海量数据读写 | 效率低 | 效率高 |
基本结构 | 基于表和列,结构固定 | 灵活性比较高 |
使用场景 | 业务方面的OLTP系统 | 用于数据的缓存、或基于统计分析的OLAP系统 |
注:OLTP是指联机事务处理,OLAP是指联机分析处理。
2.MySQL服务器安装
统一使用5.7x的版本,我们这里使用5.7.27
2.1Windows绿色安装
- 解压MySQL:如解压到D:\Tools\mysql-5.7.27-winx64(注意不要放在中文路径、有空格或特殊字符的路径中)
- 配置环境变量:
1.右键此电脑->高级系统设置->环境变量->在下面系统变量栏点击新建->
变量名:MYSQL_HOME
变量值:为MySQL解压的根目录,我这里为D:\Tools\mysql-5.7.27-winx64
2.在系统变量栏找到Path变量并双击:
Win10中点击新建以添加新的路径:
%MYSOL_HOME%\bin
Win7中直接添加到Path的最前面:
%MYSQL_HOME%\bin;
- 配置MySQL初始化文件:
1.在MySQL根目录下创建初始化文件my.ini,即D:\Tools\mysql-5.7.27-winx64\my.ini,内容如下:
[mysql]
# 设置mysql客户端默认字符集
default-character-set=utf8
[mysqld]
#设置3306端口
port=3306
# 设置mysql的安装目录
basedir=D:/Tools/mysql-5.7.27-winx64
# 设置mysql数据库的数据的存放目录
datadir=D:/Tools/mysql-5.7.27-winx64/data
# 允许最大连接数
max_connections=200
# 服务端使用的字符集默认为8比特编码的latin1字符集
character-set-server=utf8
# 创建新表时将使用的默认存储引擎
default-storage-engine=innodb
2.将以上basedir和datadir后的内容替换成自己的路径。
3.注意:需要保存为ANSI编码。方法一:使用记事本打开,保存/另存为,选择ANSI编码。方法二:使用Notpad++打开,点击编码->转为ANSI编码->保存。
- 初始化MYSQL
右键单击cmd,选择管理员身份进行,执行以下命令
mysqld--initialize--insecure
如果出现找不到mysqld或者mysql命令,这是环境变量没有配置正确。检查环境变量,如果正确,则重新打开cmd,因为cmd会缓存系统变量,没有更新。
以上初始化操作完成后,可以看到Mysql根目录下生成了data目录。
初始化的Mysql会生成超级管理员,账户名root,密码为空。
- 安装Mysql服务:
如果以前安装过Mysql,会默认安装Mysql的系统服务,点击开始菜单,输入services.msc,进入洗系统服务界面,搜索是否有Mysql服务(可以在英文状态输入Mysql快速定位),如果有mysql服务,需要先删除,有以下两种删除方法:
- cmd管理员权限打开,输入sc ddelete mysql
- 如果以上命令执行失败,还可以直接使用注册表删除,点击开始菜单,输入regedit,查找HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services中的mysql,将其删除。
在以上mysql服务器删除后,可以安装新解压的mysql服务了,在cmd执行:
mysqld install
此时执行win+r输入services.msc打开服务器,可以看到Mysql服务。
- 运行/停止Mysql服务器
cmd执行
net start mysql
net stop mysql
2.2Windows中重装MYSQL
- 重装相同版本的Mysql很简单,不用真正卸载,只需要删除MYSQL根目录下data文件夹,之后按照2.1中的内容,从初始化MYSQL内容开始重新执行即可。
- 重装不同版本的MYSQL,需要卸载以前安装的MYSQL:如果以前通过解压方式安装的MYSQl,需要重新安装或者卸载时,需要进行如下操作:右键cmd,选择以管理员身份运行
net stop mysql
mysqld -remove mysql
之后重新执行2.1安装步骤。
3.Mac中常见的安全问题
- 切换到bash shell:
chsh -s /bin/bash
- 查找mysql目录:
find / -name mysql
- 新建用户功能设置文件:
vim ~/.profile
打开的文件中点击i,输入以下内容:
export MYSQL_HOME=查找到的mysql目录(一般是/usr/local/mysql)
export PATH=$MYSQL_HOME:$PATH
再点击“:wq”保存退出
- 刷新环境变量:
source ~/.profile
4.客户端连接MYSQL服务器
MYSQL默认只允许在服务器本机使用root用户登录,要开启root用户的远程登录,在MYSQL服务器本机执行:
mysql -u root -p
要求输入密码,没有设置密码则直接回车
进入MYSQL命令行以后,可以看到mysql>
-- 使用mysql数据库
use mysql;
-- 更新用户表的root账户,设置为任意ip都可以访问,密码修改为123456
update user set host="%",authentication_string=password('root') where
user="root";
-- 刷新权限
flush privileges;
退出
quit;
5.SQL的分类
- DDL数据定义语言,用来维护存储数据的结构 代表指令:create, drop, alter
- DML数据操纵语言,用来对数据进行操作 代表指令:insert, delete, update DML中有单独分了一个DQL,数据查询语言,代表指令:select
- DCL数据控制语言,主要负责权限管理和事务 代表指令:grant, revoke, commit