mysql安装配置启动
1. 安装 & 配置 & 启动
MySQL现在的版本主要分为:
- 5.x 版本,现在互联网企业中的主流版本,包括:头条、美图、百度、腾讯等互联网公司主流的版本。
- 8.x 版本,新增了一些了窗口函数、持久化配置、隐藏索引等其他功能。
1.1 win系统
第1步:下载安装
MySQL :: Download MySQL Community Server (Archived Versions)

第2步:解压至任意文件夹
建议解压至软件安装目录,例如:

第3步:创建配置文件
在MySQL的安装目录下创建 my.ini 的文件,作为MySQL的配置文件。

[mysqld]
# port
port=3306
# set basedir to your installation path
basedir=C:\Program Files\mysql-5.7.39-winx64
# set datadir to the location of your data directory
datadir=C:\Program Files\mysql-5.7.39-winx64\data
其实,MySQL的配置文件可以放在很多的目录,下图是配置文件的优先级:

强烈,建议大家还是把配置文件放在MySQL安装目录下,这样以后电脑上想要安装多个版本的MySQL时,配置文件可以相互独立不影响。
注意:如果你电脑的上述其他目录存在MySQL配置文件,建议删除,否则可能会影响MySQL的启动。
第4步:初始化
>>> "C:\Program Files\mysql-5.7.39-winx64\bin\mysqld.exe" --initialize-insecure
初始化命令在执行时,会自动读取配置文件并执行初始化,此过程主要会做两件事:
- 自动创建data目录,以后我们的数据都会存放在这个目录。
- 同时创建建必备一些的数据,例如默认账户 root (无密码),用于登录MySQL并通过指令操作MySQL。

在windowns安装过程中如果有报错 ( msvcr120.dll不存在 ),请下载并安装下面的两个补丁:
vcredist:https://www.microsoft.com/zh-cn/download/confirmation.aspx?id=40784 (主要)

dirctx:https://www.microsoft.com/zh-CN/download/details.aspx?id=35

第5步:启动
启动MySQL常见的有两种方式:
临时启动
>>> "C:\Program Files\mysql-5.7.39-winx64\bin\mysqld.exe"

注意:此时程序会挂起,内部就是可以接收客户端发来的MySQL指令,关闭窗口或Ctrl+c 就可以停止运行。
这种启动方式每次开机或想要开启都需要手动执行一遍命令比较麻烦。
制作windows服务,基于windows服务管理。
>>>"C:\Program Files\mysql-5.7.39-winx64\bin\mysqld.exe" --install mysql57

创建好服务之后,可以通过命令 启动和关闭服务,例如:
>>> net start mysql57
>>> net stop mysql57
也可以在window的服务管理中点击按钮启动和关闭服务。例如:



以后不再想要使用window服务了,也可以将制作的这个MySQL服务删除。
>>>"C:\Program Files\mysql-5.7.39-winx64\bin\mysqld.exe" --remove mysql57

第6步:测试连接MySQL
安装并启动MySQL之后,就可以连接MySQL来测试是否已正确安装并启动成功。

以后在开发时,肯定是要用Python代码来连接MySQL并且进行数据操作(后面讲)。
在安装MySQL时,其实也自动安装了一个工具(客户端),让我们快速实现连接MySQL并发送指令。

注意:如果把bin目录加入环境变量,每次在运行命令时,就不用再重新输入绝对路径了。

上述过程如果操作完成之后,证明你的安装和启动过程就搞定了。
1.2 mac系统
mac系统和win不同,MySQL为他提供了非常方便的一站式安装程序,只要点击、next就可以安装、初始化完成。
第1步:安装和初始化
https://downloads.mysql.com/archives/community/



这个基于dmg文件的安装过程,其实包含了:
- 安装,默认安装在了
/usr/local/mysql-5.7.31-macos10.14-x86_64/目录。 - 初始化,在安装目录下创建data目录用于存放数据; 初始化模块数据库以及账户相关等,例如: 账cd

第2步:创建配置文件
建议在MySQL安装目录下创建 etc/my.cnf 作为MySQL的配置文件。

MySQL的配置文件按照优先级,会在以下目录中寻找:

为了避免多个版本共存时,配置文件混乱的问题,建议大家还是把配置文件放在当前MySQL的安装目录下。
第3步:启动
在Mac系统中启动MySQL常见的有2种方式:
安装目录中自带
mysql.server脚本(建议)sudo /usr/local/mysql/support-files/mysql.server start
# 输入电脑密码 sudo mysql.server start
# 输入电脑密码
sudo /usr/local/mysql/support-files/mysql.server stop

为了避免每次执行命令都需要些路径,可以将路径
/usr/local/mysql/support-files加入到环境变量中。

操作完成之后,再在终端执行下命令:source ~/.zprofile 让设置的环境变量立即生效。
注意:mac系统的版本如果比较老,会显示空白的 zprofile 文件,此就要去打开 bash_profile 文件。
这样设置好之后,以后就可以使用下面的命令去启动和关闭MySQL了。
sudo mysql.server start
sudo mysql.server stop
- 系统偏好设置(不推荐)

第一种mysql.server脚本的形式,内部是使用 mysqld_safe运行,可以守护我们的MySQL进程,如意外挂掉可自动重启。
第4步:测试连接MySQL
安装并启动MySQL之后,就可以连接MySQL来测试是否已正确安装并启动成功。

以后在开发时,肯定是要用Python代码来连接MySQL并且进行数据操作(后面讲)。
在安装MySQL时,其实也自动安装了一个工具(客户端),让我们快速实现连接MySQL并发送指令。


注意:/usr/local/mysql/bin也可以加入到环境变量。
至此,在Mac系统中关于MySQL的安装和配置就完成了。
1.3 关于配置文件
上述的过程中,我们在配置文件中只添加了很少的配置。
其实,配置项有很多,而哪些配置项都有默认值,如果我们不配置,MySQL则自动使用默认值。
1.4 关于密码
1. 设置和修改root密码
在windows系统中模块默认 root 账户是没有密码的,如果想要为账户设定密码,可以在利用root账户登录成功之后,执行:

2. 忘记root密码
如果你忘记了MySQL账户的密码。
修改配置文件,在 [mysqld] 节点下添加
skip-grant-tables=1[mysqld] ...
skip-grant-tables=1
...
重启MySQL,再次登录时,不需要密码直接可以进去了
windows重启
net stop mysql57
net start mysql57
mac重启
sudo mysql.server restart
重启后,无需密码就可以进入。
>>> mysql -u root -p
进入数据库后执行修改密码命令
use mysql;
update user set authentication_string = password('新密码'),password_last_changed=now() where user='root';
退出并再次修改配置文件,删除 [mysqld] 节点下的
skip-grant-tables=1[mysqld]
...
# skip-grant-tables=1
...
再次重启,以后就可以使用新密码登录了。
mysql安装配置启动的更多相关文章
- Linux(Manjaro) - Docker - MySQL 安装配置
Linux(Manjaro) - Docker - MySQL 安装配置 拉取mysql镜像 # 使用网易的 MySQL 镜像地址 docker pull hub.c.163.com/library/ ...
- Linux下的Mysql安装 & 配置
Hive的数据,是存在HDFS里的.此外,hive有哪些数据库,每个数据库有哪些表,这样的信息称之为hive的元数据信息. 元数据信息不存在HDFS里.而是存在关系型数据库里,hive默认用的是der ...
- mysql 安装配置及经常使用操作
作为关系型数据库的一种,mysql因其占用内存小和开源等特性而兴起.以下简介下关于mysql配置和简单的操作. mysql配置 1.安装文件的下载 免安装版下载地址 :http://dev.mysql ...
- Linux-CentOS7环境MySQL安装配置
Linux-CentOS7环境MySQL安装配置 1. 安装准备 (1)检查MySQL是否已安装 (2)如果有的话,就全部卸载 2. 安装libaio (1)检索相关信息: (2)安装依赖包: 3. ...
- MySQL 安装和启动服务,“本地计算机 上的 MySQL 服务启动后停止。某些服务在未由其他服务或程序使用时将自动停止。”
MySQL 安装和启动服务,以及遇到的问题 MySQL版本: mysql-5.7.13-winx64.zip (免安装,解压放到程序文件夹即可,比如 C:\Program Files\mysql-5. ...
- [Mysql] 安装后启动不了
Mysql安装后启动报错: ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/lib/mysql ...
- MySQL---5、可视化工具Navicat for MySQL安装配置
一.安装文件包下载 Navicat for MySQL 安装软件和破解补丁: 链接:https://pan.baidu.com/s/1oKcErok_Ijm0CY9UjNMrnA 密码:4xb1 ...
- FreeRADIUS + MySQL 安装配置笔记
FreeRADIUS + MySQL 安装配置笔记 https://www.2cto.com/net/201110/106597.html
- RabbitMq安装配置启动
RabbitMq安装配置启动 一:安装材料 请前往官方地址下载 Erlang: https://www.erlang.org/downloads rabbitmq: https://www.rabbi ...
- mysql安装配置和启动
MySQL数据库安装配置和启动 1,下载MySQL 打开MySQL的官网www.mysql.com,发现有一个DOWNLOADS 点击它,进入到MySQL的下载页面,在页面的底部有一个MySQL ...
随机推荐
- Selenium KPI接口 附件上传
实现功能 拖拽图片到百度上传图片搜索功能区域. 定位.send_keys(r'图片路径') 导入相关包 from selenium import webdriver from time import ...
- 【记录】C-文件输入输出
写在开头 摸鱼摸得昏天黑地,是该炸一炸鱼的本愿了~ 以前总觉得笔记没什么重要的,但有时事到临头,又十分渴求简明的提纲来唤起记忆/提供重学的门路.于是就有了以下的产物,也希望能抑制一下无效摸鱼的堕落 ...
- [Qt 基础-01] QPushButton
QPushButton 简介 QPushButton是一个很常用的一个按钮控件,主要用于创建一个可按压的按键.它显示了一 个文本和一个图标.另外,你也可以在创建时,指定一个快捷键. 基本用法 1. 创 ...
- Netty基础—6.Netty实现RPC服务
大纲 1.RPC的相关概念 2.RPC服务调用端动态代理实现 3.Netty客户端之RPC远程调用过程分析 4.RPC网络通信中的编码解码器 5.Netty服务端之RPC服务提供端的处理 6.RPC服 ...
- 解决nvm ls-remote 列表只出现iojs版本
前言 在 nvm 安装 node 时发现显示不存在此版本,使用 nvm ls-remote 查看可安装列表时发现,列表中只有 iojs $ nvm ls-remote iojs-v1.0.0 iojs ...
- Oracle体系结构和用户管理
本篇博客将对Oracle的体系结构.存储结构.内存结构和进程结构进行初步介绍,从而从宏观上把握它的物理组成.文件组成和各种进程,对于进一步的了解可以起到很好地作用 一.Oralce体系结构 1.概述 ...
- GrapeCity Documents V8.0 新版本特性
GcExcel V8.0 新版本特性丰富,包括:数据导入方面,可从多种数据源(如自定义对象.DataTable 等)导入,为 IRange.ImportData (..) 新增重载:假设分析上,通过 ...
- 几款ZooKeeper可视化工具,最后一个美炸了~
首发于公众号:BiggerBoy 欢迎关注,查看更多技术文章 ZooKeeper是我们工作中常用一个开源的分布式协调服务,提供分布式数据一致性解决方案,分布式应用程序可以实现数据发布订阅.负载均衡.命 ...
- 如何优化和提高MaxKB回答的质量和准确性?
目前 ChatGPT.GLM等生成式人工智能在文本生成.文本到图像生成等在各行各业的都有着广泛的应用,但是由于大模型训练集基本都是构建于网络公开的数据,对于一些实时性的.非公开的或离线的数据是无法获取 ...
- JAVA基础之多线程二期
一.主线程 public class MainThread { /** * 主线程:指执行main()方法的线程,且该线程是单线程,从上到下执行 * JVM执行main()方法时,JVM会将main( ...