【阿里云】在云服务器ECS 安装MySQL、本地远程连接或宝塔连接(手动部署)

目录

一、安装MySQL

二、配置MySQL

三、远程访问MySQL数据库

四、Navicat本地连接远程MySQL

五、宝塔连接MySQL


如果你是使用宝塔安装的MySQL请绕过,以下是通过命令行模式(手动部署)进行安装、配置及运行。

安装:MySQL8.0   其他版本请参阅> MySQL :: MySQL Documentation

操作系统:CentOS 7.x

安全组放行:实例安全组入方向放行22、80、443、3306端口。

数据库连接工具:Navicat Premium

SSH连接工具:FinalShell

先来看看宝塔,未安装之前的界面

导出你本地的数据库表信息(备用)

右键选中本地数据库表 midway_db > 转储SQL文件 > 结构和数据 > 导出 midway_db.sql 文件

一、安装MySQL

1、通过SSH连接

这里使用FinalShell工具,该工具的安装和使用可以翻看我之前写的文章。

2、下载MySQL 8.0版本

sudo rpm -Uvh https://dev.mysql.com/get/mysql80-community-release-el7-7.noarch.rpm

3、安装MySQL

sudo rpm -Uvh https://mirrors.aliyun.com/alinux/3/updates/x86_64/Packages/compat-openssl10-1.0.2o-4.0.1.al8.x86_64.rpm

4、查看MySQL版本号

mysql -V

返回结果如下,表示MySQL安装成功。

mysql  Ver 8.0.37 for Linux on x86_64 (MySQL Community Server - GPL)

二、配置MySQL

1、启动并设置开机自启动MySQL服务

sudo systemctl start mysqld
sudo systemctl enable mysqld

2、获取并记录root用户的初始密码

sudo grep 'temporary password' /var/log/mysqld.log

执行命令结果如下:

2024-05-30T14:29:23.582517Z 6 [Note] [MY-010454] [Server] A temporary password is generated for root@localhost: M1c=K)Ethf_l

❓ 说明 示例末尾的 M1c=K)Ethf_l 为初始密码,后续在对MySQL进行安全性配置时,需要使用该初始密码。

3、对MySQL进行安全性配置

sudo mysql_secure_installation

a. 根据提示信息,重置MySQL数据库root用户的密码

❓ 说明 在输入密码时,系统为了最大限度地保证数据安全,命令行将不做任何回显。您只需要输入正确的密码信息,然后按 Enter 键即可。

Securing the MySQL server deployment.Enter password for user root: #输入以获取的root用户初始密码The existing password for the user account root has expired. Please set a new password.New password: #输入新的MySQL密码Re-enter new password:  #重复输入新的MySQL密码
The 'validate_password' component is installed on the server.
The subsequent steps will run with the existing configuration
of the component.
Using existing password for root.Estimated strength of the password: 100 
Change the password for root ? ((Press y|Y for Yes, any other key for No) : Y #输入Y选择更新MySQL密码。您也可以输入N不再更新MySQL密码。New password: #输入新的MySQL密码Re-enter new password: #重复输入新的MySQL密码Estimated strength of the password: 100 
Do you wish to continue with the password provided?(Press y|Y for Yes, any other key for No) : Y #输入Y确认使用已设置的密码。

b. 根据提示信息,删除匿名用户

By default, a MySQL installation has an anonymous user,
allowing anyone to log into MySQL without having to have
a user account created for them. This is intended only for
testing, and to make the installation go a bit smoother.
You should remove them before moving into a production
environment.Remove anonymous users? (Press y|Y for Yes, any other key for No) : Y  #输入Y删除MySQL默认的匿名用户。
Success.

c. 禁止root账号远程登录

Normally, root should only be allowed to connect from
'localhost'. This ensures that someone cannot guess at
the root password from the network.Disallow root login remotely? (Press y|Y for Yes, any other key for No) : Y  #输入Y禁止root远程登录。
Success.

d. 删除test库以及对test库的访问权限

By default, MySQL comes with a database named 'test' that
anyone can access. This is also intended only for testing,
and should be removed before moving into a production
environment.Remove test database and access to it? (Press y|Y for Yes, any other key for No) : Y  #输入Y删除test库以及对test库的访问权限。- Dropping test database...
Success.- Removing privileges on test database...
Success.

e. 重新加载授权表

Reloading the privilege tables will ensure that all changes
made so far will take effect immediately.Reload privilege tables now? (Press y|Y for Yes, any other key for No) : Y  #输入Y重新加载授权表。
Success.All done! 

三、远程访问MySQL数据库

建议您使用非root账号远程登录MySQL数据库。以下示例中,将创建新的MySQL账号,用于远程访问MySQL。

1、输入root用户的密码登录MySQL

sudo mysql -uroot -p

2、依次运行以下命令,创建远程登录MySQL的账号,并允许远程主机使用该账号访问MySQL。

本示例账号为Vinca、密码为Ecs@123****

❗ 重要 实际创建账号时,需将示例密码Ecs@123****更换为符合要求的密码,并妥善保存。密码要求:长度为8至30个字符,必须同时包含大小写英文字母、数字和特殊符号。可以使用以下特殊符号:

()` ~!@#$%^&*-+=|{}[]:;‘<>,.?/

#创建数据库用户Vinca,并授予远程连接权限。
create user 'Vinca'@'%' identified by 'Ecs@123****'; #为Vinca用户授权数据库所有权限。
grant all privileges on *.* to 'Vinca'@'%'; #刷新权限。
flush privileges; 

3、退出数据库

exit

4、使用Vinca账号远程登录MySQL

您可以通过MySQL客户端远程登录MySQL进行测试。例如:MySQL Workbench、Navicat。

四、Navicat本地连接远程MySQL

a. 输入刚刚创建的非root账号进行远程连接MySQL

连接失败请查看ECS实例安全组是否放行对应端口号(如:3306);及系统防火墙,请参阅:http://t.csdnimg.cn/7w4wW

b.新建数据库

如果你不清楚字符集和排序规则,请参考你原先本地的数据库配置

c. 右键 midway_db 数据库,选择“运行SQL文件”

d. 选择最开始让你导出的 midway_db.sql 文件,点击开始

e. vinca_ecs数据库 右键刷新

midawy_db数据表 右键刷新

数据和结构就同步过去了。

五、宝塔连接MySQL

a. 输入刚刚创建的非root账号进行远程连接MySQL

b. 如果连接成功,如图示

c. 结合我们刚刚本地的Navicat添加了vinca_ecs数据库,我们这里就直接同步,不过多赘述。


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

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

相关文章

【java前端课堂】01_final和private的区别

目录 简介&#xff1a; 下面是这两个关键字的简单总结&#xff1a; 示例&#xff1a; 使用 final 限制类不被继承&#xff1a; 简介&#xff1a; 在Java中&#xff0c;我们使用final来限制一个类不被其他类继承&#xff0c;这是为了确保类的实现不会被修改或破坏。而private…

【golang学习之旅】Go中的cron定时任务

系列文章 【golang学习之旅】报错&#xff1a;a declared but not used 【golang学习之旅】Go 的基本数据类型 【golang学习之旅】深入理解字符串string数据类型 【golang学习之旅】go mod tidy 【golang学习之旅】记录一次 panic case : reflect: reflect.Value.SetInt using…

【天气预报game】

要编写一个简单的天气预报游戏代码&#xff0c;我们可以使用Python语言。这个游戏可以模拟基本的天气预报功能&#xff0c;让玩家输入一个城市&#xff0c;然后返回该城市的天气情况。我们可以使用一个预定义的天气数据库&#xff0c;或者使用网络服务来获取实时天气数据。 下面…

Python编程学习第一篇——制作一个小游戏休闲一下

到上期结束&#xff0c;我们已经学习了Python语言的基本数据结构&#xff0c;除了数值型没有介绍&#xff0c;数值型用的非常广&#xff0c;但也是最容易理解的&#xff0c;将在未来的学习中带大家直接接触和学习掌握。后续我们会开始学习这门语言的一些基础语法和编程技巧&…

cs与msf权限传递

cs传递到msf 1&#xff0c;先启动cs ┌──(root㉿ring04h)-[~/cobalt_strike_4.7] └─# ./teamserver 192.168.196.144 123456 ​ ┌──(root㉿ring04h)-[~/cobalt_strike_4.7] └─# ./start.sh ​ 2&#xff0c;上传木马&#xff0c;上线主机 3&#xff0c;msf配置一个…

暑期社会实践来了,这份投稿攻略你收藏好!

一、文字投稿要求 &#xff08;一&#xff09;实践纪实类 1.内容充实&#xff0c;字数不低于1500字&#xff0c;标题10-30字&#xff0c;不允许用“精彩飞扬——大学实践队”形式&#xff0c;要求用一句话标题。导语新闻五要素齐全&#xff08;即何人、何时、何地、何事、何因…

Qt——升级系列(Level Two):Hello Qt 程序实现、项目文件解析、Qt 编程注意事项

Hello Qt 程序实现 使用“按钮”实现 纯代码方式实现&#xff1a; // Widget构造函数的实现 Widget::Widget(QWidget *parent): QWidget(parent) // 使用父类构造函数初始化QWidget&#xff0c;传入父窗口指针, ui(new Ui::Widget) // 创建Ui::Widget类的实例&#xff0c;并…

人工智能时代,Martech未来的3种场景

多年来&#xff0c;人们一直在预测Martech Landscape的崩溃。成千上万个不同的Martech应用程序将被筛选出少数几个赢家。在过去的12年里&#xff0c;这些预测一直被证明是错误的&#xff0c;年复一年。 但也许&#xff0c;只是也许&#xff0c;人工智能时代将成为拐点&#xf…

dibbler-DHCPv6 的开源框架(C++ 实现)1

一、下载 IPv6 DHCPv6 协议的开源框架&#xff1a;dibbler 下载地址&#xff1a;https://github.com/tomaszmrugalski/dibbler.git 二、代码编写语言和文件结构 编写语言 文件 三、编译 编译 server 端&#xff1a; chmod x configure ./configure# 编译服务端(4核) mak…

AI推介-大语言模型LLMs论文速览(arXiv方向):2024.05.25-2024.05.31

文章目录&#xff5e; 1.Direct Alignment of Language Models via Quality-Aware Self-Refinement2.Enhancing Noise Robustness of Retrieval-Augmented Language Models with Adaptive Adversarial Training3.Unveiling the Lexical Sensitivity of LLMs: Combinatorial Opt…

golang普通函数与闭包函数使用示例

1.普通函数实现 // 同类开多个参数默认写法 func add2(a int, b int) int {return a b }// 同类开多个参数简洁写法 func add3(a, b, c int) int {return a b c } 2.函数返回多个值实现 // 多个返回值写法 func add(a int, b int) (int, int) {return a * 5, b * 5 }// 多…

戴尔R720服务器(3)组RAID

今天收到7块硬盘&#xff0c;现在共有8块硬盘了&#xff0c;找了个视频学习了怎么使用阵列卡组RAID并记录。 ​​ ‍ 视频参考&#xff1a;【戴尔服务器添加RAID5热备盘hotspare】 ‍ 阵列卡组RAID5 开始 连接iDRAC控制台服务器开机按F2进入BIOS选择Device Settings​ ​​…

Python语言自学:深入探索四个基础、五个进阶、六个实战及七个挑战

Python语言自学&#xff1a;深入探索四个基础、五个进阶、六个实战及七个挑战 Python&#xff0c;作为一种通用编程语言&#xff0c;其简洁的语法、丰富的库和强大的功能&#xff0c;使得越来越多的人选择自学Python。但自学之路并非坦途&#xff0c;本文将从四个方面、五个方…

重生之 SpringBoot3 入门保姆级学习(15、内容协商返回不同数据类型)

重生之 SpringBoot3 入门保姆级学习&#xff08;15、内容协商返回不同数据类型&#xff09; 3.3.3 改变 Accept 实现内容协商3.3.4 改变 application.proerties 实现内容协商 3.3.3 改变 Accept 实现内容协商 添加支持写出 xml 内容的 Maven 依赖并刷新 Maven <!-- …

二叉树的前序遍历-力扣

二叉树的前序遍历&#xff0c;指先遍历中间节点&#xff0c;然后遍历左节点&#xff0c;然后遍历右节点&#xff0c;按照这个顺序进行递归即可。 /*** Definition for a binary tree node.* struct TreeNode {* int val;* TreeNode *left;* TreeNode *right;* …

Poll机制实现以及应用实例

目录 poll机制概要说明 测试程序: 驱动程序: poll机制概要说明 Linux 系统中的 poll 机制是一种 I/O 多路复用技术,它允许程序同时监控多个文件描述符(file descriptors),以确定哪些文件描述符已经准备好进行读取、写入或出现错误。poll 机制提供了一种高效的方式来处…

linux 下修改屏幕分辨率

在使用麒麟虚拟机时&#xff0c;不知道咋回事&#xff0c;会自动改变分辨率。 使用界面设置分辨率选项修改时&#xff0c;下面的保存修改按钮显示不出来&#xff0c;无法完成设置。 所以需要使用命令行修改一下分辨率&#xff0c;修改命令如下所示&#xff1a; 1、执行xrand…

ES6真题合集(二)

ES6真题合集&#xff08;二&#xff09; 6. ES6中 Module6.1 导出&#xff08;Export&#xff09;6.2 导入&#xff08;Import&#xff09; 7. ES6中 Generator7.1 基础用法7.2 特点7.3 应用场景 8. ES6中 Decorator8.1 基础用法 9. ES6新增Set、Map两种数据结构9.1 Set9.2 Map…

用户体验至上:Vatee万腾平台的界面设计之道

在数字化时代&#xff0c;用户体验&#xff08;UX&#xff09;已经成为决定产品成功与否的关键因素之一。Vatee万腾平台深知此理&#xff0c;将用户体验置于首要位置&#xff0c;通过精心设计的界面为用户提供了便捷、舒适且高效的交易体验。 一、以用户为中心的设计理念 Vatee…

用canvas整个烟花效果

闲来无事&#xff0c;想着随便捣鼓一点东西玩玩 说说思路&#xff1a; 一 需要一个粒子类 模拟每一个烟花粒子&#xff0c;粒子有横坐标&#xff0c;纵坐标&#xff0c;半径&#xff0c;速度&#xff0c;颜色等属性&#xff0c;以及绘制的方法。 颜色这里我加了个初始化的方法…