当前位置: 首页 > news >正文

MySQL - 安装、连接、简单介绍

1、安装 MySQL8.0

安装MySQL 8.0的步骤,以 Windows 为例:

1.1 下载MySQL Installer:

需要从MySQL官方网站下载MySQL Installer。在下载页面中,选择适用于Windows的MySQL Installer并下载。

1.2 运行MySQL Installer:

下载完成后,运行下载的MySQL Installer。安装程序将会指导你完成MySQL的安装过程。

1.3 选择安装类型:

在MySQL Installer中,可以选择安装MySQL的不同组件,包括Server、Workbench、Shell等。选择Server选项,这将安装MySQL数据库服务器。

1.4 选择MySQL版本:

选择要安装的MySQL版本。选择MySQL 8.0版本。

1.5 安装过程:

接下来,MySQL Installer会下载所选版本的MySQL并开始安装过程。按照安装向导的指示进行操作。在过程中,你可以设置MySQL的root用户密码和其他配置。

1.6 启动MySQL服务:

安装完成后,MySQL服务将会自动启动。你可以在Windows的服务列表中查看MySQL服务是否正在运行。

1.7 连接MySQL:

安装完成后,可以使用MySQL Workbench等MySQL客户端工具来连接和管理MySQL服务器。使用root用户密码登录MySQL Workbench。

1.8 测试连接:

连接成功后,可以通过MySQL Workbench或其他MySQL客户端工具来测试连接,执行SQL查询等操作。

2、JetBrains开发的DataGrip:

DataGrip是一款由JetBrains开发的数据库集成开发环境(IDE)。JetBrains是一家知名的软件开发工具公司,他们也开发了许多受欢迎的IDE,如IntelliJ IDEA(Java开发工具)、PyCharm(Python开发工具)等。

DataGrip专注于数据库开发和管理,它为开发人员和数据库管理员提供了一个功能强大的工具,用于连接、查询、编辑和管理各种类型的数据库。它支持许多常见的关系型数据库,包括MySQL、PostgreSQL、Oracle、SQL Server、SQLite等,以及一些非关系型数据库如MongoDB。

DataGrip提供了许多有用的功能,使得数据库开发更加高效和方便,包括:

数据库连接管理: DataGrip允许你轻松连接到多个数据库,你可以配置数据库连接参数,保存连接配置,并且可以快速切换连接。SQL查询和编辑: DataGrip提供了功能强大的SQL编辑器,支持SQL代码自动完成、语法高亮、代码导航和错误检查等功能,使得编写和调试SQL查询更加方便。数据可视化: DataGrip允许你以表格形式查看数据库中的数据,并支持图表展示查询结果,使得数据可视化更加直观。数据导入和导出: DataGrip支持将数据从数据库导出为不同格式的文件,也支持将外部数据导入到数据库中,使得数据迁移更加简单。数据库管理: DataGrip提供了数据库对象管理功能,你可以管理数据库表、视图、存储过程、触发器等对象,也可以执行数据库维护任务。版本控制: DataGrip集成了版本控制系统(如Git),允许你对数据库脚本和结构进行版本管理。

3、连接

在使用DataGrip连接MySQL数据库时,需要提供以下信息:

3.1 数据库连接信息:

主机名或IP地址:MySQL数据库所在的主机名或IP地址。
端口号:MySQL数据库的端口号,默认为3306。
数据库名称:要连接的具体数据库的名称。
用户名和密码:连接到MySQL数据库所需的用户名和对应的密码。

3.1.1 SSH隧道(如果需要):

如果你的MySQL数据库位于受限制的网络中,需要通过SSH隧道进行连接,你还需要提供SSH服务器的信息,包括SSH主机名、SSH端口号、SSH用户名和对应的SSH密码或密钥文件。

在DataGrip中,可以通过以下步骤来连接MySQL数据库:

1、打开DataGrip并点击"Connect to Database"(连接到数据库)按钮。
2、在连接对话框中选择MySQL数据库类型。
3、输入MySQL数据库的主机名、端口号、数据库名称、用户名和密码。
4、如果需要SSH隧道,点击"SSH/SSL"选项卡,并填写SSH服务器的信息。
5、点击"Test Connection"(测试连接)按钮来验证连接是否成功。
6、如果连接测试成功,点击"OK"按钮来保存连接配置。

一旦连接成功,DataGrip将会显示数据库的结构和内容,你可以开始执行SQL查询、编辑数据库等操作。请确保提供的连接信息是正确的,并且你有权限连接到指定的MySQL数据库。

在这里插入图片描述
在这里插入图片描述

4、配置

4.1 添加用户

在MySQL中,默认情况下,root用户是具有超级用户权限的管理员账户,拥有对MySQL服务器的完全控制权限。由于root用户具有最高权限,不建议在实际应用中直接使用root用户进行普通操作,以防止意外的安全风险。

为了安全起见,通常建议创建一个专门用于应用程序或普通用户操作的新用户,并为其分配适当的权限。以下是在MySQL中创建新用户的步骤:

以root用户登录: 首先,使用root用户登录到MySQL服务器。在命令提示符窗口或MySQL客户端中,使用以下命令连接到MySQL服务器:

mysql -u root -p

系统将提示你输入root用户的密码。也可以

mysql -u root -p 密码

创建新用户: 登录成功后,可以使用以下SQL语句来创建新用户。将"new_user"和"password"替换为你想要的用户名和密码。

CREATE USER 'new_user'@'localhost' IDENTIFIED BY 'password';

这将在MySQL中创建一个新用户,并指定其用户名和密码。

CREATE USER 'lfsun'@'localhost' IDENTIFIED BY '123321';

授予权限: 接下来,需要为新用户分配适当的权限。可以根据具体需求为用户授予特定数据库或表的读写权限,或者赋予全局权限。例如,为了让新用户具有对所有数据库的读写权限,可以使用以下命令:

GRANT ALL PRIVILEGES ON *.* TO 'lfsun'@'localhost';

这将授予新用户对所有数据库的所有权限。

刷新权限: 在分配权限后,需要刷新MySQL的权限表,以使更改生效。可以使用以下命令刷新权限:

FLUSH PRIVILEGES;

退出MySQL: 最后,使用以下命令退出MySQL客户端:

exit;

完成上述步骤后,就成功创建了一个新用户并为其分配了适当的权限。现在,可以使用新用户的凭据登录到MySQL服务器,并执行具有相应权限的操作。

4.2 用户都有哪些权限?

在MySQL中,用户可以被授予不同级别的权限,以控制对数据库和数据库对象的访问和操作。以下是常见的MySQL用户权限级别:

ALL PRIVILEGES: 表示用户具有对所有数据库和表的完全权限,包括SELECT、INSERT、UPDATE、DELETE、CREATE、DROP、ALTER等权限。SELECT: 允许用户从数据库表中查询数据。INSERT: 允许用户向数据库表中插入新数据。UPDATE: 允许用户修改数据库表中的现有数据。DELETE: 允许用户从数据库表中删除数据。CREATE: 允许用户创建新的数据库或表。DROP: 允许用户删除数据库或表。ALTER: 允许用户修改数据库表的结构。GRANT OPTION: 允许用户将自己拥有的权限授予其他用户。EXECUTE: 允许用户执行存储过程。SHOW DATABASES: 允许用户查看所有数据库的列表。SHOW VIEW: 允许用户查看数据库中的视图。CREATE ROUTINE: 允许用户创建存储过程和函数。ALTER ROUTINE: 允许用户修改存储过程和函数。EVENT: 允许用户创建、修改和删除事件。TRIGGER: 允许用户创建和删除触发器。

4.2.1 一般情况下都有哪些权限?

在一般情况下,用户的权限应根据其在数据库中的角色和责任来进行合理分配。以下是在一般情况下常见的权限设置:

管理员权限:

ALL PRIVILEGES:数据库管理员通常需要具有对所有数据库和表的完全权限,以便进行数据库的管理和维护操作。

应用程序用户权限:

SELECT:应用程序用户通常只需要从数据库中查询数据,所以应该授予SELECT权限。
INSERT:如果应用程序需要向数据库中插入新数据,应该授予INSERT权限。
UPDATE:如果应用程序需要修改数据库中的数据,应该授予UPDATE权限。
DELETE:如果应用程序需要从数据库中删除数据,应该授予DELETE权限。

数据库开发者权限:

SELECT:数据库开发者需要查询和读取数据库中的数据,因此应该有SELECT权限。
INSERT:开发者可能需要向数据库中插入测试数据或新记录,所以应该授予INSERT权限。
UPDATE:开发者可能需要更新测试数据或纠正错误,所以应该授予UPDATE权限。

只读权限:

SELECT:有些用户可能只需要查看数据而没有修改权限,可以只授予SELECT权限,从而实现只读访问。

一般来说,为了保证数据库的安全性和数据完整性,应该遵循最小权限原则,即为用户分配最少所需的权限,不给予不必要的权限。管理员用户可能需要更高级别的权限以便管理数据库,而普通应用程序用户通常只需要具有查询和读写数据的权限。

相关文章:

MySQL - 安装、连接、简单介绍

1、安装 MySQL8.0 安装MySQL 8.0的步骤,以 Windows 为例: 1.1 下载MySQL Installer: 需要从MySQL官方网站下载MySQL Installer。在下载页面中,选择适用于Windows的MySQL Installer并下载。 1.2 运行MySQL Installer&#xff1…...

【算法】求欧拉函数(包括完整的证明以及代码模板,建议收藏)

求欧拉函数 前置知识 互质:互质是公约数只有1的两个整数,叫做互质整数。 欧拉函数定义 1 ∼ N − 1 1∼N-1 1∼N−1中与N互质的数的个数被称为欧拉函数,记为 ϕ ( N ) \phi(N) ϕ(N)。 若在算数基本定理中, N p 1 a 1 p 2 a 2 .…...

Ceph的应用

文章目录 一、创建 CephFS 文件系统 MDS 接口1)在管理节点创建 mds 服务2)查看各个节点的 mds 服务3)创建存储池,启用 ceph 文件系统4)查看mds状态,一个up,其余两个待命,目前的工作的…...

mac m1 触控栏TouchBar功能栏异常

电脑可能在高温下运行时间过长,导致TouchBar之前正常显示的调整屏幕亮度与调整声音等功能的按钮均丢失,然后看了一眼键盘设置,设置也是正常的,已勾选显示功能栏 下面请看 如何在MacBook Pro(macOS Monterey&#xff0…...

“奢侈品”价格的“快消品”,竹叶青这么想赚年轻人的“茶水钱”?

文 | 螳螂观察 作者 | 青月 或许是受养生焦虑的影响,这届年轻人似乎爱上了喝茶。 《抖音电商茶行业洞察报告》数据显示, 年轻客群已经成为了抖音电商茶行业的增长极,在茶叶、茶具、茶文化书籍等方面,18-30岁消费者是当之无愧消…...

【Matlab】基于随机森林算法的时间序列预测(Excel可直接替换数据)

【Matlab】基于随机森林算法的时间序列预测(Excel可直接替换数据) 1.模型原理2.数学公式3.文件结构4.Excel数据5.分块代码6.完整代码7.运行结果1.模型原理 基于随机森林算法的时间序列预测是一种利用随机森林模型来解决时间序列预测问题的方法。在传统的随机森林算法中,对于…...

vue 中断请求

1 背景:针对一些请求时间较长,组件销毁后即中断请求; 2 方法: data(){return {//用于取消请求abortController:new AbortController(), } }, created(){//请求接口this.groundAcquisition(); }, beforeDestroy(){//中断请求this.…...

Jwt(Json web token)——从Http协议到session+cookie到Token Jwt介绍 Jwt的应用:登陆验证的流程

目录 引出从Http协议到session&cookie到TokenHTTP协议session & cookiesessioncookie为什么需要session & cookie? JavaEE传统解决长连接方案问题:分布式不适用解决方案:令牌Token Jwt,Json web tokenjwt的结构Header加密算法Ba…...

Java使用 java.util.regex.Pattern 正则表达式校验参数值是否规范

场景: java中我们可以利用 Pattern 注解对某个入参进行规则校验,但有些特殊参数在接口入口处不方便校验,需要在代码中校验 一、使用 Pattern 注解校验 Pattern(regexp "^[a-zA-Z0-9]$", message "xxx号限输入字母、…...

HDFS基本操作命令

这里写目录标题 HDFS Shell CLI客户端说明常用命令hadoop fs -mkdir [-p] <path>hadoop fs -ls [-h] [-R] [<path>...]上传文件到指定目录下方法一:hadoop fs -put [-f] [-p] <localsrc>.....<dst>方法二&#xff1a;hadoop fs -moveFromLocal <loc…...

git 实操

首先有安装好的git,安装好后,会在任一目录下右键出现git bash和git gui两个选项 打开git bash,设置好全局变量,用户名和邮箱,设置方法为: git config -- global user.name "xxx" git config --global user.email "xxxxxx.com" 1.创建版本库 git init 命…...

Visual Studio Code Python 扩展中的包管理

排版&#xff1a;Alan Wang Python 凭借其简单的语法和强大的库&#xff0c;目前已成为最流行的编程语言之一&#xff0c;也是最适合那些刚接触编程的人们的语言。但是&#xff0c;随着项目复杂性和规模的增长&#xff0c;管理依赖项的复杂性也会增加。当新用户不断承接更成熟的…...

spring学习笔记九

数据源对象管理 1、加入pom坐标 <dependency><groupId>com.alibaba</groupId><artifactId>druid</artifactId><version>1.1.16</version></dependency><!-- https://mvnrepository.com/artifact/c3p0/c3p0 --><depe…...

java list stream 使用

1、实现List对象集合的简单去重&#xff08;distinct()&#xff09; ​ List<User> list list.stream().distinct().collect(Collectors.toList()); ​2、实现List集合的根据属性&#xff08;name&#xff09;去重 list list.stream().filter(o -> o.getName() ! …...

两个Ubuntu电脑用SSH远程连接

两个Ubuntu电脑用SSH远程连接 1.ssh客户端及服务端的安装&#xff1a; 打开终端后&#xff0c;只需要以下两个命令即可 sudo apt-get install openssh-clientsudo apt-get install openssh-server2.启动ssh服务&#xff0c;执行以下命令&#xff1a; sudo /etc/init.d/ssh …...

讲解 @ServletComponentScan注解

目录: 1、用法介绍2、实例讲解 1、介绍 在SpringBoot项目启动器中添加ServletComponentScan注解后&#xff0c;SpringBoot在启动时会扫描并注册所有带有WebServlet&#xff08;控制器&#xff09;、WebFilter&#xff08;过滤器&#xff09;、WebListener&#xff08;监听器&a…...

20款奔驰S350商务型加装原厂前排座椅通风系统,夏天必备的功能

通风座椅的主动通风功能可以迅速将座椅表面温度降至适宜程度&#xff0c;从而确保最佳座椅舒适性。该功能启用后&#xff0c;车内空气透过打孔皮饰座套被吸入座椅内部&#xff0c;持续时间为 8 分钟。然后&#xff0c;风扇会自动改变旋转方向&#xff0c;将更凉爽的环境空气从座…...

Rust vs Go:常用语法对比(十一)

题目来自 Rust Vs Go: Which Language Is Better For Developing High-Performance Applications?[1] 202. Sum of squares Calculate the sum of squares s of data, an array of floating point values. 计算平方和 package mainimport ( "math")func main() { da…...

Spring MVC拦截器和跨域请求

一、拦截器简介 SpringMVC的拦截器&#xff08;Interceptor&#xff09;也是AOP思想的一种实现方式。它与Servlet的过滤器&#xff08;Filter&#xff09;功能类似&#xff0c;主要用于拦截用户的请求并做相应的处理&#xff0c;通常应用在权限验证、记录请求信息的日志、判断用…...

C++初阶--C++入门

目录 前言C关键字命名空间命名空间的定义命名空间的使用加命名空间名称及作用域限定符使用using namespace 命名空间名称引入使用using将命名空间中的成员引入 C的输入与输出缺省参数全缺省半缺省参数 函数重载参数类型不同参数个数不同参数类型顺序不同 引用引用特性 常引用使…...

CVPR 2025 MIMO: 支持视觉指代和像素grounding 的医学视觉语言模型

CVPR 2025 | MIMO&#xff1a;支持视觉指代和像素对齐的医学视觉语言模型 论文信息 标题&#xff1a;MIMO: A medical vision language model with visual referring multimodal input and pixel grounding multimodal output作者&#xff1a;Yanyuan Chen, Dexuan Xu, Yu Hu…...

突破不可导策略的训练难题:零阶优化与强化学习的深度嵌合

强化学习&#xff08;Reinforcement Learning, RL&#xff09;是工业领域智能控制的重要方法。它的基本原理是将最优控制问题建模为马尔可夫决策过程&#xff0c;然后使用强化学习的Actor-Critic机制&#xff08;中文译作“知行互动”机制&#xff09;&#xff0c;逐步迭代求解…...

SCAU期末笔记 - 数据分析与数据挖掘题库解析

这门怎么题库答案不全啊日 来简单学一下子来 一、选择题&#xff08;可多选&#xff09; 将原始数据进行集成、变换、维度规约、数值规约是在以下哪个步骤的任务?(C) A. 频繁模式挖掘 B.分类和预测 C.数据预处理 D.数据流挖掘 A. 频繁模式挖掘&#xff1a;专注于发现数据中…...

Mac软件卸载指南,简单易懂!

刚和Adobe分手&#xff0c;它却总在Library里给你写"回忆录"&#xff1f;卸载的Final Cut Pro像电子幽灵般阴魂不散&#xff1f;总是会有残留文件&#xff0c;别慌&#xff01;这份Mac软件卸载指南&#xff0c;将用最硬核的方式教你"数字分手术"&#xff0…...

HarmonyOS运动开发:如何用mpchart绘制运动配速图表

##鸿蒙核心技术##运动开发##Sensor Service Kit&#xff08;传感器服务&#xff09;# 前言 在运动类应用中&#xff0c;运动数据的可视化是提升用户体验的重要环节。通过直观的图表展示运动过程中的关键数据&#xff0c;如配速、距离、卡路里消耗等&#xff0c;用户可以更清晰…...

快刀集(1): 一刀斩断视频片头广告

一刀流&#xff1a;用一个简单脚本&#xff0c;秒杀视频片头广告&#xff0c;还你清爽观影体验。 1. 引子 作为一个爱生活、爱学习、爱收藏高清资源的老码农&#xff0c;平时写代码之余看看电影、补补片&#xff0c;是再正常不过的事。 电影嘛&#xff0c;要沉浸&#xff0c;…...

python爬虫——气象数据爬取

一、导入库与全局配置 python 运行 import json import datetime import time import requests from sqlalchemy import create_engine import csv import pandas as pd作用&#xff1a; 引入数据解析、网络请求、时间处理、数据库操作等所需库。requests&#xff1a;发送 …...

Android写一个捕获全局异常的工具类

项目开发和实际运行过程中难免会遇到异常发生&#xff0c;系统提供了一个可以捕获全局异常的工具Uncaughtexceptionhandler&#xff0c;它是Thread的子类&#xff08;就是package java.lang;里线程的Thread&#xff09;。本文将利用它将设备信息、报错信息以及错误的发生时间都…...

在鸿蒙HarmonyOS 5中使用DevEco Studio实现指南针功能

指南针功能是许多位置服务应用的基础功能之一。下面我将详细介绍如何在HarmonyOS 5中使用DevEco Studio实现指南针功能。 1. 开发环境准备 确保已安装DevEco Studio 3.1或更高版本确保项目使用的是HarmonyOS 5.0 SDK在项目的module.json5中配置必要的权限 2. 权限配置 在mo…...

Python的__call__ 方法

在 Python 中&#xff0c;__call__ 是一个特殊的魔术方法&#xff08;magic method&#xff09;&#xff0c;它允许一个类的实例像函数一样被调用。当你在一个对象后面加上 () 并执行时&#xff08;例如 obj()&#xff09;&#xff0c;Python 会自动调用该对象的 __call__ 方法…...