关于安装MySQL遇到的问题

数据库相关概念

💡数据库系统

( DataBase System, 简称 DBS)

是指计算机系统引入数据库后的系统构成, 是一个具有管理数据库功能的计算机软硬件综合系统。 数据库系统可以实现有组织地、动态地存储大量数据、提供数据处理和资源共享的服务。

💡数据库管理系统

数据库管理系统为用户或应用程序提供访问数据库的方法,包括:数据库的建立、查询、更新及各种数据操作。

数据库管理系统是位于用户与操作系统之间的一层数据管理软件, 在数据库建立、 运用和维护时对数据库进行统一控制、统一管理, 使用户能方便地定义数据和操纵数据, 并能够保证数据的安全性、 完整性、 多用户对数据的并发使用及发生故障后的系统恢复。

如MySQL、SQL Server、Oracle、PostgreSQL等。

💡数据库管理工具

随着数据库技术的发展,人们就想到一些基础的操作:比如新建、删除、查询、修改数据库或者表能不能不用自己写SQL语句,把这些模版化的东西做成软件让开发人员的工作更加方便。

用数据库管理工具连接数据库是需要数据库驱动navicat内置了数据库驱动,所以可以直接连接服务器上的数据库。 但是在自己本地计算机时,要安装数据库,并安装相应的数据库驱动那个程序

因而,可以直接在navicat连接MySQL数据库,但是在自己本地计算机需要安装数据库以及相应的数据驱动

MySQL安装

通常有两种安装方式,此处用的是zip安装

详情见Mysql 数据库的安装(zip文件和msi文件两种方式安装)

Mysql的两种安装方式

安装步骤

😃下载压缩包

先去官网下载zip压缩包,地址:(这里下载的是8.0.12)MySQL :: Download MySQL Community Server (Archived Versions)

😃解压到安装目录

😃创建配置文件

创建my.ini配置文件,记得更改自己的安装目录

[mysqld]
#设置端口号
port=3306
 
#设置mysql的安装目录
#切记此处一定要用双斜杠\\
basedir=H:\\Program Files (x86)\\mysql-8.0.12-winx64\\
 
#设置mysql数据库的数据存放目录
datadir=H:\\Program Files (x86)\\mysql-8.0.12-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

😃配置环境变量

右击我的电脑,属性,高级系统设置,环境变量(或者直接电脑搜索栏搜索环境变量)

编辑Path变量,新增刚刚MySQL的bin目录

以管理员身份打开 cmd,验证环境

输入mysql --version即可显示MySQL版本信息

😃初始化数据库

以管理员身份打开 cmd

因为已经配置了环境变量,直接管理员方式打开的cmd命名的全局目录就可以运行以下命令
如果电脑安装了多个mysql,则最好进入到安装的mysql bin目录下再运行以下命令
 

#查询服务,会提示没有该服务
sc query mysql


#初始化mysql,生成data文件内容,同时打印相关日志
mysqld --initialize --user=mysql --console

😃安装服务

(提示:Service successfully installed.就证明你安装成功了)

#安装mysql服务
mysqld --install

😃开启mysql服务

这个时候运行 mysql -uroot -p 会报错

ERROR 2003 (HY000): Can't connect to MySQL server on 'localhost' (10061)

net start mysql开启服务,也可以直接搜索服务打开本地服务可视化手动开启

然后查询服务,可能会出现服务状态还是stopped的情况

这个原因可能是注册表的路径不对,win+R 输入 regedit打开注册表,找到这个路径计算机\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\MySQL

查看MySQL的ImagePath是否与自己的安装目录一致,否则右键编辑改成自己的目录

改完之后再开启服务

net start mysql

查询服务,发现state 变成Running状态了

sc query mysql

😃登录mysql

这个时候就可以登录mysql了,用的是前面提到的随机密码

mysql -uroot -p

😃设置root密码

ALTER USER 'root'@'localhost' IDENTIFIED BY 'new_password';

select host,user,authentication_string from mysql.user;
查询user信息

😃退出登录

输入quit即可退出登录

补充

关于MySQL的版本:

  • MySQL Community Server 是MySQL的免费开源版本,适合于开发人员和中小型企业使用。它包含了数据库的核心功能,能够满足绝大多数应用场景的基本需求。

  • MySQL Enterprise Edition 版本是定位于企业级应用的MySQL版本,提供全面的数据库解决方案和服务。这个版本在Community版的基础上,增加了许多企业关键应用所需的高级功能。

  • MySQL Standard Edition 版本适合需要较高安全和可靠性的中小型企业。虽然不如Enterprise Edition功能全面,但它提供了企业级的核心功能。

  • MySQL Cluster CGE(Commercial Grade Edition)是一个专为高可用性、高吞吐量、低延迟的应用场景设计的MySQL版本。它是一个真正的分布式数据库解决方案。

常用指令

  • 连接进入 :mysql -u root -p  ( mysql -h主机地址 -u用户名 -p用户密码
  • 退出: exit (回车)或quit 或\q 
  • 创建数据库:create database testDB default charset utf8;
  • 展示所有数据库: show databases;
  • 切换数据库:use testDB;
  • 创建表:CREATE TABLE customers (name VARCHAR(255), address VARCHAR(255));
  • 展示所有表格:show tables;
  • 插入数据:INSERT INTO customers (name, address) VALUES ("Eva", "Hangzhou");
  • 插入数据:INSERT INTO customers (name) VALUES ("Yang");
  • 展示表的结构:desc customers;
  • 展示表的所有数据:select * from customers;
  • 插入新列:ALTER TABLE customers ADD COLUMN id INT AUTO_INCREMENT PRIMARY KEY;
  • 检查端口占用:netstat -ano,如果没有找到3306,说明端口没有被占用
  • 修改root密码-step1:alter user 'root'@'localhost' identified by '123456';
  • 修改root密码-step2:flush privileges;
  • 修改root密码-step3:exit
  • 修改root密码-step4:service mysql restart 重启服务。

参考资料

MySQL问题解决记录:ERROR 1045 (28000): Access denied for user ‘ODBC‘@‘localhost‘ (using password: YES/NO)

下载安装mysql与设置密码详细步骤(压缩包版本)

ERROR 2003 (HY000): Can‘t connect to MySQL server on ‘localhost‘ (10061)

安装MySQL服务时提示的路径与情况不符

mysql服务路径修改

MySql 安装与使用(非常详细)

MySQL常用cmd指令

mysql cmd常用命令

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值