MySQL安装使用(mac、windows)

目录

macOS环境

一、下载MySQL

二、环境变量

三、启动 MySql

四、初始化密码设置

windows环境

一、下载

二、 环境配置

三、安装mysql

1.初始化mysql

 2.安装Mysql服务

3.更改密码

四、检验

1.查看默认安装的数据库

2.其他操作

macOS环境

一、下载MySQL

打开 MySql 官方下载页面

我是macOS12,所以选择了8.0.30

下载完成之后,打开安装,一直下一步安装完成,在最后安装完成时,会弹出对话框,里面包含了 mysql 账号跟临时密码,需要拷贝出来记录一下,后面会用它进行登录以及修改为新的 mysql 密码:

root 就是账号,密码就是随机生成的这串,如果使用强密码就是自己输入的那个密码。

在新版本中会有 use strong password excryptionuse legacy password excryption 选项

  • use strong password encryption:使用强密码加密。mysql8 支持基于 SHA256 的更强的认证方式,所有新安装的 mysql server 建议使用这个方式。clients 或 connectors 如果不支持这个方式,就不能连接到这个 mysql server。
  • use legacy password encryption:使用老式的密码加密,也就是上图中的。
  • 配置 root 的密码,合理的密码规则为:至少8个字符,包含数字、字母、其他字符。

接着输入你的密码,用于登陆,切记!跟上面旧密码一样的,一定要记住记好了!

安装成功以后,可以使用命令行进行启动操作,也可以进入 系统偏好设置 中找到 Mysql 进行可视化启动!

二、环境变量

  • 第一步 :在终端切换到根目录,编辑 ~/.bash_profile 或 ~/.zshrc 文件,也可以两个都加

  • $ vim ~/.bash_profile
    $ vim ~/.zshrc
  • # 辅助:查看 mysql 本地路径
    $ ps -ef|grep mysql# 辅助:如果两个配置文件不存在,可以手动创建
    $ cd ~
    $ touch .zshrc
    $ vim .zshrc# 辅助:如果不想走命令行的方式修改环境变量,也可以直接打开文件进行可视化修改,不支持 Linux 可视化
    $ open ~/.zshrc
    

    第二步 :进入 vim 编辑环境。 按下 i 进入 insert 模式 ,输入

  • export PATH=$PATH:/usr/local/mysql/bin
    export PATH=$PATH:/usr/local/mysql/support-files
    

    第三步 :按下 esc 退出 insert 模式,输入 :wq 保存配置文件。

  • :wq


    第四步 :在终端界面下输入以下命令,让配置文件的修改生效,并查看环境变量是否设置成功

  • $ source ~/.bash_profile 
    $ source ~/.zshrc
    $ echo $PATH
    

    到这里环境变量就设置完成了,我们可以查看一下当前 mysql 的版本:

  • $ mysql -V

MySQL服务的启停和状态的查看

开启MySQL服务(需要输入电脑密码,不是数据库登录密码)
sudo mysql.server start停止MySQL服务
sudo mysql.server stop重启MySQL服务
sudo mysql.server restart查看MySQL服务状态
sudo mysql.server status

三、启动 MySql

  • 第一步 :启动 mysql 服务

sudo mysql.server start

启动如果报错 ERROR! The server quit without updating PID file (/usr/local/mysql/data/***.pid). 这边是因为安装了就默认启动了,已经有进程在了,所以报错,关掉重启就没问题了。还有别的原因也会这样,比如没有读写权限等。

第二步 :启动成功后,登录 mysql

mysql -u root -p

四、初始化密码设置

  • 设置初始化密码,进入数据库 mysql 数据库之后执行下面的语句,设置当前 root 用户的密码为 123456 (密码设置你自己的,这里只是举例)。

  • set password = password('123456');
    

回车,然后会提示设置成功。

退出 sql 界面

exit
  • 以上 MySql 就在本地安装完成了 !!!

数据库管理(两种形式)

  • 1.MySQL Workbench
  • 2.Navicat premium(指令练习)

windows环境

一、下载

1.下载解压

MySQL :: Download MySQL Community Server

下载后解压,存放到安装目录下

2.在【安装目录】内,新建 my.ini 空文件

可以先创建一个txt文件,另存为my.ini

输入以下内容(注意安装目录)

[mysql]
# 设置 mysql 客户端默认字符集
default-character-set=utf8[mysqld]
#设置 3306 端口
port = 3306# 设置 mysql 的安装目录
basedir= C:\mysql\mysql-8.2.0-winx64# 设置 mysql 数据库的数据的存放目录
datadir= C:\mysql\mysql-8.2.0-winx64\data# 允许最大连接数
max_connections=200# 服务端使用的字符集默认为 8 比特编码的 latin1 字符集
character-set-server=utf8# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB

 或者

[mysqld]
# 设置3306端口
port=3306
# 设置mysql的安装目录
basedir=C:\\mysql\\mysql-8.2.0-winx64  # 切记此处一定要用双斜杠\\,单斜杠我这里会出错,不过看别人的教程,有的是单斜杠
# 设置mysql数据库的数据的存放目录
datadir=C:\\mysql\\mysql-8.2.0-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

二、 环境配置

方便调用数据库,相当于一个快捷方式。

1 打开环境变量

按 win+q,输入“环境变量”,选择“编辑系统环境变量”,点击“环境变量”

2.新建系统变量 MYSQL_HOME

在下方的”系统变量“内,新建一个系统变量,变量名为 MYSQL_HOME ,变量值为【安装目录】,如图。

3.编辑 Path 变量

继续在“系统变量”找到变量名为 Path 的系统变量,新建一个新的环境变量 %MYSQL_HOME%\bin

 

三、安装mysql

1.初始化mysql

管理员运行cmd,进入bin路径下,输入

mysqld --initialize --console

  

执行完成后,会打印 root 用户的初始默认密码,比如: 

C:\mysql\mysql-8.2.0-winx64\bin>mysqld --initialize --console
2024-03-11T10:13:22.761487Z 0 [System] [MY-015017] [Server] MySQL Server Initialization - start.
2024-03-11T10:13:22.772911Z 0 [System] [MY-013169] [Server] C:\mysql\mysql-8.2.0-winx64\bin\mysqld.exe (mysqld 8.2.0) initializing of server in progress as process 22556
2024-03-11T10:13:22.777567Z 0 [Warning] [MY-013242] [Server] --character-set-server: 'utf8' is currently an alias for the character set UTF8MB3, but will be an alias for UTF8MB4 in a future release. Please consider using UTF8MB4 in order to be unambiguous.
2024-03-11T10:13:22.805070Z 1 [System] [MY-013576] [InnoDB] InnoDB initialization has started.
2024-03-11T10:13:23.985606Z 1 [System] [MY-013577] [InnoDB] InnoDB initialization has ended.
2024-03-11T10:13:27.977275Z 6 [Note] [MY-010454] [Server] A temporary password is generated for root@localhost: V/tfKjvP6sDu
2024-03-11T10:13:33.448473Z 0 [System] [MY-015018] [Server] MySQL Server Initialization - end.C:\mysql\mysql-8.2.0-winx64\bin>

注意!执行输出结果里面有一段:[Note] [MY-010454] [Server] A temporary password is generated for root@localhost: V/tfKjvP6sDu 其中root@localhost:后面的“V/tfKjvP6sDu”就是初始密码(不含首位空格)。在没有更改密码前,需要记住这个密码,后续登录需要用到。 

 2.安装Mysql服务

在MySQL安装目录的 bin 目录下执行命令:

mysqld --install [服务名]

后面的服务名可以不写,默认的名字为 mysql。当然,如果你的电脑上需要安装多个MySQL服务,就可以用不同的名字区分了,比如 mysql5 和 mysql8。

安装完成之后,就可以通过命令net start mysql启动MySQL的服务了。通过命令net stop mysql停止服务。通过命令sc delete MySQL/mysqld -remove卸载 MySQL 服务

3.更改密码

在MySQL安装目录的 bin 目录下执行命令:

mysql -u root -p

这时候会提示输入密码,记住了上面初始化步骤时的密码,填入即可登录成功,进入MySQL命令模式。

在MySQL中执行命令:

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '新密码';   

修改密码,注意命令尾的;一定要有,这是mysql的语法

这样,安装部署就完成了 !!!

四、检验

1.查看默认安装的数据库

show databases;

use mysql;

show tables;

mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |
| sys                |
+--------------------+
4 rows in set (0.02 sec)
mysql> use mysql;
Database changed
mysql> show tables;
+------------------------------------------------------+
| Tables_in_mysql                                      |
+------------------------------------------------------+
| columns_priv                                         |
| component                                            |
| db                                                   |
| default_roles                                        |
| engine_cost                                          |
| func                                                 |
| general_log                                          |
| global_grants                                        |
| gtid_executed                                        |
| help_category                                        |
| help_keyword                                         |
| help_relation                                        |
| help_topic                                           |
| innodb_index_stats                                   |
| innodb_table_stats                                   |
| ndb_binlog_index                                     |
| password_history                                     |
| plugin                                               |
| procs_priv                                           |
| proxies_priv                                         |
| replication_asynchronous_connection_failover         |
| replication_asynchronous_connection_failover_managed |
| replication_group_configuration_version              |
| replication_group_member_actions                     |
| role_edges                                           |
| server_cost                                          |
| servers                                              |
| slave_master_info                                    |
| slave_relay_log_info                                 |
| slave_worker_info                                    |
| slow_log                                             |
| tables_priv                                          |
| time_zone                                            |
| time_zone_leap_second                                |
| time_zone_name                                       |
| time_zone_transition                                 |
| time_zone_transition_type                            |
| user                                                 |
+------------------------------------------------------+
38 rows in set (0.01 sec)

2.其他操作

管理员root的host是localhost,代表仅限localhost登录访问。如果要允许开放其他ip登录,则需要添加新的host。如果要允许所有ip访问,可以直接修改成“%

创建用户:

CREATE USER 'xxh'@'%' IDENTIFIED WITH mysql_native_password BY 'xxh123!@#';

#(需要注意:mysql8.0加密方式修改了)
#检查用户

select user, host, plugin, authentication_string from user\G;

授权远程数据库

#授权所有权限 

GRANT ALL PRIVILEGES ON *.* TO 'xxh'@'%';

#授权基本的查询修改权限,按需求设置

GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,DROP,ALTER ON *.* TO 'xxh'@'%';

查看用户权限

show grants for 'xxh'@'%';

 查看密码加密方式:

select user, host, plugin, authentication_string from user;

另外,如果需要新增账户,或者本机以外的其他人访问MySQL则还需要设置内置账户的host,具体可以参考:MySQL创建用户与授权 

MAC MySql 安装(详细步骤)_mac 安装mysql-CSDN博客

https://www.cnblogs.com/laumians-notes/p/9069498.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/741418.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

用 Qt 不怕被告吗?

用 Qt 不怕被告吗? 在开始前我有一些资料,是我根据网友给的问题精心整理了一份「Qt 的资料从专业入门到高级教程」, 点个关注在评论区回复“888”之后私信回复“888”,全部无偿共享给大家!!! 收律师函不…

云浮肇庆三维扫描钣金铸件抄数逆向设计外观画3D图上门抄数服务

钣金铸件抄数逆向设计画图是一项精密而富有挑战性的工作,它要求工程师具备深厚的专业知识和丰富的实践经验。3D抄数,即是通过精密测量设备获取钣金铸件的三维数据,为后续的逆向设计提供基础。逆向设计则是指根据已有的实物或模型,…

鸿蒙Harmony应用开发—ArkTS声明式开发(基础手势:StepperItem)

用作Stepper组件的页面子组件。 说明: 该组件从API Version 8开始支持。后续版本如有新增内容,则采用上角标单独标记该内容的起始版本。 子组件 支持单个子组件。 接口 StepperItem() 属性 参数名参数类型参数描述prevLabelstring设置左侧文本按钮内…

2024年软考计划开始了,你准备好了吗?

目录标题 2024年度计算机技术与软件专业技术资格(水平)考试工作计划计算机软考中级科目哪个含金量最高?报考流程和说明 2024年度计算机技术与软件专业技术资格(水平)考试工作计划 一、2024年度计算机软件资格考试(初级…

<Linux> 线程控制

目录 一、线程资源的分配 (一)线程私有资源 (二)线程共享资源 二、原生线程库 三、线程控制接口 (一)线程创建 - pthread_create() 1. 一个线程 2. 一批线程 (二)线程等待 …

linux 新增定时任务

1、创建定时任务 crontab -e 2、加入定时任务规则 0 2 * * * /usr1/local/mysql-backup/backup.sh 说明:backup.sh是sh脚本 3、重启定时任务 service crond restart 扩展 1、查看定时任务列表 crontab -l 2、需要修改定时任务 crontab -e

BUUCTF---web---[护网杯 2018]easy_tornado1

1.点开题目链接 2.依次点开文件链接 3.通过第一个信息可知,flag在文件名为/fllllllllllllag这个里面,第二个信息中的render是渲染函数,第三个个信息中是一个md5加解密,因为filename我们已经知道,所以我们需要找到cooki…

哪些数据可视化工具适合初学者使用?

数据建模及可视化平台,提供一站式全链路数据生命周期管理方案,支持数据建模,支持报表、图谱、大屏可视化应用的快速构建,支持AIBI探索实践,全流程免代码,免费使用 1、功能结构 2、技术架构 3、功能清单

2024年独立站C端只靠SEO还有机会吗?(川圣SEO)蜘蛛池

baidu搜索:如何联系八爪鱼SEO? baidu搜索:如何联系八爪鱼SEO? baidu搜索:如何联系八爪鱼SEO? 2024年独立站C端只靠SEO还有机会吗?#蜘蛛池SEO 都2024年了,你的外贸独立站推广还需要…

盘点Python中4种读取JSON文件和提取JSON文件内容的方法

目录 一、使用json模块的load()方法 二、使用json模块的loads()方法 三、使用pandas库的read_json()方法 四、使用第三方库如requests从网络API获取JSON数据 总结 JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,它基于EC…

一文总结CNN中【各类卷积】操作

本文详细总结CNN中各类卷积,旨在指导 domain-specific 更好的模型设计,包括标准卷积,分组卷积(Group Conv),深度可分离卷积(Depthwise Separable Conv),转置卷积&#xf…

官网解决方案之:人力资源网站建设的十大要点

hello,大家好,我是贝格前端工场,从这期开始分享行业网站该如何规划和建设,本期从人力资源网站开始说起。 建设人力资源官网是企业展示自身人力资源管理能力,吸引人才,提升企业形象的重要途径。以下是建设人…

【Linux实践室】Linux 查询命令帮助语句(文末送书)

🌈个人主页:聆风吟_ 🔥系列专栏:Linux实践室、网络奇遇记 🔖少年有梦不应止于心动,更要付诸行动。 文章目录 一. ⛳️任务描述二. ⛳️相关知识2.1 🔔Linux man命令2.2 🔔Linux info…

软件测试知识面试题:白盒测试、黑盒测试、测试用例

文章目录 白盒测试1、白盒测试分两类2、白盒测试的四个原则3、白盒测试常用的7类测试 黑盒测试1、黑盒测试的优缺点2、黑盒测试的方法3、黑盒测试的原则 测试用例1、测试用例包含2、设计测试用例所需的文档资料3、采用白盒测试技术设计用例的目的4、采用黑盒测试技术设计用例的…

InnoDB数据页结构---页目录 PageDirectory

InnoDB为了不同的目的而设计了许多种不同类型的页,比如存放表空间头部信息的页,存放Insert Buffer信息的页,存放INODE信息的页,存放undo日志信息的页等等等等。本文聚焦的是那些存放我们表中记录的那种类型的页,官方称…

ChatGPT提问技巧:可解释的软提示

ChatGPT提问技巧:可解释的软提示 可解释的软提示是一种既能控制模型生成的文本,又能为模型提供一定灵活性的技术。 具体做法是为模型提供一组受控输入和一些有关所需输出的附加信息。这种技术可以使生成的文本更具可解释性和可控性。 提示示例及其公式…

edm邮件是什么意思:与普通邮件有何不同?

edm邮件是什么意思?如何优化邮件内容以提高转化率? edm邮件因其独特的营销价值而备受关注。那么,edm邮件究竟是什么意思呢?它与普通邮件又有哪些不同呢?下面,AokSend就来为大家介绍一下。 edm邮件的概念与…

【SpringCloud微服务实战07】Sentinel 服务保护

Sentinel 是阿里巴巴开源的一款微服务流量控制组件。主要作用: 流量控制:避免因瞬间高并发流量而导致服务故障流。超时处理、线程隔离、降级熔断:避免因服务故障引起的雪崩问题。一、Sentinel 安装 1、安装Sentinel控制台,下载jar包并启动:Releases alibaba/Sentinel G…

基于大数据的商业模式创新研究

目录 一、导论 2 (一)研究背景 2 (二)研究意义 2 (三)研究内容 3 (四)研究思路与研究方法 4 (五)国内外研究现状 6 二、大数据的界定与应用概况 7 &#xff…

RPC基础知识回顾

RPC基础知识回顾 1、先认识一下大家熟悉的HTTP 大家都了解HTTP吧。相信项目中也用过一些。 比如: JDK自带的老旧的HttpURLConnection,封装写的很累,java8之前基于HTTP1.0。在java9开始支持Http2.0Spring的其中RestTemplate都是基于HTTP/1.1的请求。最新的还有Sp…