DBMS:数据库管理系统(Database Management System)是一种操纵和管理数据库的大型软件,例如建立、使用和维护数据库。
DB:数据库(Database)
SQL:结构化查询语言,(Structure Query Language),专门用来操作/访问数据库的通用语言。
MySQL:其中的一款关系型数据库管理系统
以下是2022年DB-Engines Ranking 对各数据库受欢迎程度进行调查后的统计结果:(查看数据库最新排名:DB-Engines Ranking - popularity ranking of database management systems)
关系型数据库,采用关系模型来组织数据,简单来说,关系模型指的就是二维表格模型。类似于Excel工作表。非关系型数据库,可看成传统关系型数据库的功能阉割版本,基于键值对存储数据,通过减少很少用的功能,来提高性能。
遵循ER模型
E entity 代表实体的意思 对应到数据库当中的一张表
R relationship 代表关系的意思
具体体现
将数据放到表中,表再放到库中。
一个数据库中可以有多个表,每个表都有一个名字,用来标识自己。表名具有唯一性。
表具有一些特性,这些特性定义了数据在表中如何存储,类似java和python中 “类”的设计。
表由列组成,我们也称为字段。每个字段描述了它所含有的数据的意义,数据表的设计实际上就是对字段的设计。创建数据表时,为每个字段分配一个数据类型,定义它们的数据长度和字段名。每个字段类似java 或者python中的“实例属性”。
表中的数据是按行存储的,一行即为一条记录。每一行类似于java或python中的“对象”。
MySQL是一种开放源代码的关系型数据库管理系统,开发者为瑞典MySQL AB公司。在2008年1月16号被Sun公司收购。而2009年,SUN又被Oracle收购。目前 MySQL被广泛地应用在Internet上的中小型网站中。由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,使得很多互联网公司选择了MySQL作为网站数据库(Facebook, Twitter, YouTube,阿里的蚂蚁金服,去哪儿,魅族,百度外卖,腾讯)。
学习网络编程时,TCP/IP协议程序有服务器端和客户端。mysql这个数据库管理软件是使用TCP/IP协议。我们现在要卸载的是mysql的服务器端,它没有界面。
【计算】-->右键-->【管理】-->【服务】-->【mysql的服务】-->【停止】
方式一:通过控制面板卸载
方式二:通过360或电脑管家等软件卸载
方式三:通过安装包提供的卸载功能卸载
或者
如果再次安装不成功,可以卸载后对残余文件进行清理后再安装。
(1)服务目录:mysql服务的安装目录
(2)数据目录:默认在C:\ProgramData\MySQL
如果自己单独指定过数据目录,就找到自己的数据目录,例如:
注意:请在卸载前做好数据备份
在操作完以后,需要重启计算机,然后进行安装即可。如果仍然安装失败,需要继续操作如下步骤四。
如何打开注册表编辑器:在系统的搜索框中输入regedit
HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services\Eventlog\Application\MySQL服务 目录删除
HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services\MySQL服务 目录删除
HKEY_LOCAL_MACHINE\SYSTEM\ControlSet002\Services\Eventlog\Application\MySQL服务 目录删除
HKEY_LOCAL_MACHINE\SYSTEM\ControlSet002\Services\MySQL服务 目录删除
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Eventlog\Application\MySQL服务目录删除
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\MySQL服务删除
注册表中的ControlSet001,ControlSet002,不一定是001和002,可能是ControlSet005、006之类
如果在windows操作系统,删除注册表后,在服务列表中仍然存在原来的服务名,可以通过如下命令删除。
sc delete 服务名
找到path环境变量,将其中关于mysql的环境变量删除,切记不要全部删除。
例如:删除 D:\ProgramFiles\mysql\MySQLServer5.7\bin; 这个部分
双击mysql-installer-community-5.7.28.0.msi
,进入安装界面后选择Custom自定义安装,点击Next
在左侧目录中选择MySQL Server 5.7.28 -X64,点击→
加载到右侧,在选择一下要安装的产品名,在右下角会出现Advanced Options,单击它可以设置安装路径
例如将安装路径和数据路径修改到D:\develop\
下,点击OK。注意,安装目录避免空格和中文
安装完成,点击Next下一步
点击Next下一步
点击Next下一步
将MySQL配置类型选择Development Computer开发电脑设置,点击Next下一步
设置MySQL密码,因为管理员用户为root,学习初期建议将MySQL数据库密码也设置为root,设置完成后,点击Next下一步
设置Windows Service 系统服务,设置完毕后点击Next下一步
日志设置,不做任何修改,点击Next下一步
高级设置,不做任何修改,点击Next下一步
点击Execute执行设置
安装完成,点击Finish完成
MySQL软件的服务器端必须先启动,客户端才可以连接和使用使用数据库。
计算机(点击鼠标右键)==》管理(点击)==》服务和应用程序(点击)==》服务(点击)==》MySQL57(点击鼠标右键)==》启动或停止(点击)
控制面板(点击)==》系统和安全(点击)==》管理工具(点击)==》服务(点击)==》MySQL57(点击鼠标右键)==》启动或停止(点击)
任务栏(点击鼠标右键)==》启动任务管理器(点击)==》服务(点击)==》MySQL57(点击鼠标右键)==》启动或停止(点击)
启动 MySQL 服务命令: net start MySQL57 停止 MySQL 服务命令: net stop MySQL57
环境变量名 | 操作 | 环境变量值 |
---|---|---|
MYSQL_HOME | 新建 | D:\ProgramFiles\mysql\MySQLServer5.7 |
path | 编辑 | %MYSQL_HOME%\bin |
或者直接
环境变量名 | 操作 | 环境变量值 |
---|---|---|
path | 编辑 | D:\ProgramFiles\mysql\MySQLServer5.7\bin |
开始菜单==》所有程序==》MySQL==》MySQL Server 5.7==》MySQL 5.7 Command Line Client
说明:仅限于root用户
mysql -h 主机名 -P 端口号 -u 用户名 -p密码
例如:mysql -hlocalhost -P3306 -uroot -proot
注意:
(1)-p与密码之间不能有空格,其他参数名与参数值之间可以有空格也可以没有空格
mysql -hlocalhost -P3306 -uroot -proot
(2)密码建议在下一行输入
mysql -h localhost -P 3306 -u root -p Enter password:****
(3)如果是连本机:-hlocalhost就可以省略,如果端口号没有修改:-P3306也可以省略
简写成:
mysql -u root -p Enter password:****
连接成功后,有关于MySQL Server服务版本的信息,还有第几次连接的id标识。
也可以在命令行通过以下方式获取MySQL Server服务版本的信息
或登录后,通过以下方式查看当前版本信息:
例如:Navicat Preminum,SQLyog 等工具
还有其他工具:mysqlfront,phpMyAdmin
mysql> INSERT INTO t_stu VALUES(1,'张三','男'); ERROR 1366 (HY000): Incorrect string value: '\xD5\xC5\xC8\xFD' for column 'sname' at row 1
在路径:D:\ProgramFiles\mysql\MySQLServer5.7Data 找到my.ini文件 修改内容1: 找到[mysql]命令,大概在63行左右,在其下一行添加 default-character-set=utf8 修改内容2: 找到[mysqld]命令,大概在76行左右,在其下一行添加 character-set-server=utf8 collation-server=utf8_general_ci 修改完毕后,重启MySQL57服务
查看编码命令
show variables like 'character_%'; show variables like 'collation_%';
如果是以上配置就说明对了
mysql> INSERT INTO t_stu VALUES(1,'张三','男'); ERROR 1366 (HY000): Incorrect string value: '\xD5\xC5\xC8\xFD' for column 'sname' at row 1
原因:按照刚才的配置,服务器端认为你的客户端的字符集是utf-8,而实际上你的客户端的字符集是GBK。
查看所有字符集:SHOW VARIABLES LIKE 'character_set_%';
解决方案,设置当前连接的客户端字符集 “SET NAMES GBK;”
set names gbk;是为了告诉服务器,客户端用的GBK编码,防止乱码。
有的时候,这样还不能解决,例如,某些win10操作系统环境下,那么修改命令行的属性-》选项-》勾选使用旧版控制台,然后重启电脑