如何在阿里云服务器安装Mysql数据库

article/2025/9/19 2:42:38

阿里云服务器安装Mysql数据库

  • 前言
  • 一、卸载Mysql
    • 1.查看是否安装mysql
    • 2. 删除配置的mysql空间
    • 3.检查剩余的mysql信息
    • 4.mysql卸载完成
  • 二、安装Mysql
    • 1.确保服务器系统处于最新状态
    • 2.重启服务器(可选)
    • 3.下载MySql安装包
    • 4.安装MySql
    • 5.修改mysql默认字符集
    • 6.设置开机启动Mysql
    • 7.设置开启服务
    • 8.查看MySql默认密码
    • 9.登陆MySql,输入用户名和密码
    • 10.修改mysql登录密码
    • 11.授予远程连接权限
    • 12.关闭Linux系统防火墙
  • 总结


前言

由于在学习过程中需要安装zookeeper,我的虚拟机一直有问题,就够买了阿里云服务器。安装完zookeeper后想着把数据库也安装在服务器上,释放一下电脑的压力,在安装数据库的时候遇到了很多问题,通过查看有些大佬的作品终于安装好了数据库。现在就我遇到的问题总结如下:


一、卸载Mysql

1.查看是否安装mysql

首先检查是否已经安装,如果已经安装先删除以前版本,以免安装不成功

[root@localhost ~]# php -v
或
[root@localhost ~]# rpm -qa | grep mysql
或
[root@localhost ~]# yum list installed | grep mysql

如果显示以下内容说明没有安装服务
-bash: gerp: command not found

如果有会显示如下:

mysql57-community-release-el7-8.noarch
mysql-community-common-5.1.73-1.el7.x86_64
mysql-community-client-5.1.73-1.el7.x86_64
mysql-community-server-5.1.73-1.el7.x86_64
mysql-community-libs-5.1.73-1.el7.x86_64
mysql-community-libs-compat-5.1.73-1.el7.x86_64

这时就需要卸载这些安装服务

[root@localhost ~]# rpm -e mysql57-community-release-el7-8.noarch
[root@localhost ~]# rpm -e mysql-community-common-5.1.73-1.el7.x86_64
[root@localhost ~]# rpm -e mysql-community-client-5.1.73-1.el7.x86_64
[root@localhost ~]# rpm -e mysql-community-server-5.1.73-1.el7.x86_64
[root@localhost ~]# rpm -e mmysql-community-libs-5.1.73-1.el7.x86_64
[root@localhost ~]# rpm -e mysql-community-libs-compat-5.1.73-1.el7.x86_64

2. 删除配置的mysql空间

  • 先查看my.cnf中配置的datadir,不要删错了文件(默认为:/var/lib/mysql)
  • 删除datadir
rm -rf /var/lib/mysql/ 
  • 删除配置
rm /etc/my.cnf

3.检查剩余的mysql信息

whereis mysql

比如像我的就还有如下信息

mysql: /usr/bin/mysql /usr/lib64/mysql /usr/share/mysql /usr/share/man/man1/mysql.1.gz

将搜索出的mysql全都删掉
查看mysql依赖

systemctl list-dependencies mysqld

如果显示只有

mysqld.service

这时就删干净了!
如果显示像这样,还得继续删

mysqld.service
● ├─system.slice
● └─basic.target
●   ├─microcode.service
●   ├─rhel-dmesg.service
●   ├─selinux-policy-migrate-local-changes@targeted.service
●   ├─paths.target
●   ├─slices.target
●   │ ├─-.slice
●   │ └─system.slice
●   ├─sockets.target
●   │ ├─dbus.socket
●   │ ├─systemd-initctl.socket
●   │ ├─systemd-journald.socket
●   │ ├─systemd-shutdownd.socket
●   │ ├─systemd-udevd-control.socket
●   │ └─systemd-udevd-kernel.socket
●   ├─sysinit.target
●   │ ├─dev-hugepages.mount
●   │ ├─dev-mqueue.mount
●   │ ├─kmod-static-nodes.service
●   │ ├─plymouth-read-write.service
●   │ ├─plymouth-start.service
●   │ ├─proc-sys-fs-binfmt_misc.automount
●   │ ├─rhel-autorelabel-mark.service
●   │ ├─rhel-autorelabel.service
●   │ ├─rhel-domainname.service
●   │ ├─rhel-import-state.service
●   │ ├─rhel-loadmodules.service
●   │ ├─sys-fs-fuse-connections.mount
●   │ ├─sys-kernel-config.mount
●   │ ├─sys-kernel-debug.mount

4.mysql卸载完成

完成上面步骤,终于卸载完成!

二、安装Mysql

1.确保服务器系统处于最新状态

[root@localhost ~]# yum -y update

如果显示内容中含有

[root@localhost ~]# Complete!

说明更新完成

2.重启服务器(可选)

[root@localhost ~]# reboot

3.下载MySql安装包

root@localhost ~]# rpm -ivh http://dev.mysql.com/get/mysql57-community-release-el7-8.noarch.rpm
或
[root@localhost ~]# rpm -ivh http://dev.mysql.com/get/mysql-community-release-el7-5.noarch.rpm

4.安装MySql

[root@localhost ~]# yum install -y mysql-server
或
[root@localhost ~]# yum install mysql-community-server

如果显示以下内容说明安装成功

Complete!

5.修改mysql默认字符集

这里我们需要设置成utf8,打开my.cnf配置文件

vi /etc/my.cnf

添加以下内容:

//在[mysqld]的下面添加服务端字符集
character-set-server=utf8
collation-server=utf8_general_ci//需要在最下方填写客户端字符集
[client]
default-character-set=utf8

6.设置开机启动Mysql

[root@localhost ~]# systemctl enable mysqld.service

检查是否开机自动启动设置成功

[root@localhost ~]# systemctl list-unit-files | grep mysqld

如果显示以下内容说明已经完成自动启动安装

mysqld.service enabled

7.设置开启服务

[root@localhost ~]# systemctl start mysqld.service
或
[root@localhost ~]# service mysqld start

8.查看MySql默认密码

  • 直接获取原密码
[root@localhost ~]# grep 'temporary password' /var/log/mysqld.log
  • 查看日志获取
[root@localhost ~]# cat /var/log/mysqld.log

在root@localhost: 后面的就是初始密码

9.登陆MySql,输入用户名和密码

[root@localhost ~]# mysql -uroot -p

然而这时使用原始密码却登录失败!

ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)

这里需要在实例安全组配置规则,打开3306端口

10.修改mysql登录密码

  • 设置密码的验证强度等级,设置 validate_password_policy 的全局参数为 LOW
set global validate_password_policy=LOW;
  • 当前密码长度为 8 ,按照我们常用的设置为 6 位的密码。
 set global validate_password_length=6;
  • 设置mysql密码,只要满足六位的长度。
alter user 'root'@'localhost' identified by '123456'; 

11.授予远程连接权限

//授权
grant all privileges on *.* to 'root' @'%' identified by '密码';
//刷新
flush privileges;

12.关闭Linux系统防火墙

systemctl stop firewalld.service

总结

通过这次安装数据库,原本以为是一件很简单的事,然而遇到了很多的问题,也试了好多mysql版本,让我记忆犹新的就是安装完成启动mysql失败,导致后续的配置mysql无法完成,最后咨询了阿里云售后工程师和查阅了一些文档解决了我所遇到的问题,特此记录!


http://chatgpt.dhexx.cn/article/MUyFyDHO.shtml

相关文章

阿里云安装MySQL数据库全过程(适合小白)

前言: 前一阵子买了三年的服务器,一直闲着,最近才开始研究,前两天刚把Java环境装上,因为过于简单就没写教程,如果有需求的话可以给我留言。MySQL数据库是装了两次,可以本地正常链接了&#xff0…

时间复杂度主定理分析及练习

本文主要分析主定理,时间复杂度详细分析请移步至此。主定理是一种现在常用分析时间复杂度的方法,它主要适用于递归形式如下: 当 和 为常量且是一个渐进正函数时有以下三种情况: 如果,则如果,则如果&…

【算法导论-主定理】用主方法求解递归式 学练结合版

问题:若某算法的计算时间表示为递推关系式:T(N)2T(N/2)NlogN 且 T(1)1 则该算法的时间复杂度为( )。 O(Nsqrt(N)) O(NlogN) O(N(logN)^2) O(N^2logN) O(N^2) 解析: 应该是 O(N(logN)^2) 参考网址:主定理和《算法导论》 但是博…

【算法设计与分析】12 主定理及其应用

主定理是一个非常有用的定理,前面我们学习的所有知识都可以用主定理来求解,而不必要使用复杂的计算方法来求解 文章目录 1. 主定理1.1 主定理的应用背景1.2 主定理内容 2. 主定理的应用2.1 求解递推方程 例12.2 求解递推方程 例22.3 求解递推方程 例3 3.…

主定理 Master Theorem

分治法主定理 主定理的证明 假设有递归式: T ( n ) a T ( n b ) f ( n ) T(n) aT(\frac{n}{b}) f(n) T(n)aT(bn​)f(n) 证明: T ( n ) a T ( n / b ) f ( n ) T(n) aT(n/b) f(n) T(n)aT(n/b)f(n) a [ a T ( n / b 2 ) f ( n / b ) ] f ( n…

基于主定理以及递推树求解递归算法的时间复杂度

非递归算法的时间复杂度可以通过找到执行次数最多的代码,计算其执行次数即可。但是递归算法的时间复杂度则无法通过这种方式求得。有一种最简单的求递归算法的方式,即利用递推方法求解时间复杂度。如下所示: 这种方法求时间复杂度很简单&…

时间复杂度-主定理分析

目录 1.定理 2.举例 1.定理 主定理分析是一种时间复杂度的计算方式,当时间复杂度推根据实际情况推算出来是下面T(n)的形式的时候,可以通过主定理分析计算它的时间复杂度。 其实就是根据前半部分的a,b,计算出一个结果,再和后面的…

递归式求解-主定理

1.主定理:设a>1和b>1为常数,设f(n)为一函数,T(n)由递归式 对非负整数定义,其中n/b指下取整或上取整.那么T(n)可能有如下的渐进界: (1)若对于某常数 ε>0,有,则; (2)若.则; (3)若对于某常数 ε>0,有,且某常数 c<1与所有足够大的n,有,则 2.主定理的使用方法. 由主…

使用主定理求时间复杂度

文章目录 使用主定理求时间复杂度主定理直接可用主定理转化之后可以利用主定理使用主定理求时间复杂度 很多算法最后都可以写出 T ( n ) = a T ( n b ) + f ( n ) ) ( a ≥ 1 , b ≥ 1 ) T(n)=aT(\frac{n}{b}) + f(n)) (a\ge1,b\ge1) T(n)=aT(bn​)+f(n))(a≥1,b≥1) 的递推式…

主定理学习笔记

主定理用于求递推方程的阶。 设a>1, b>1为常数&#xff0c;f(n)为函数&#xff0c;T(n)为非负整数&#xff0c;且 T(n) aT(n/b) f(n) &#xff08;注意a、b取值范围&#xff09; a代表递归调用子问题的个数(子问题数>小于原问题&#xff0c;故a>1)n / b代表子…

主定理证明

转自GoogleSite算法导论习题解答&#xff0c;先fork一下 算法导论其实已经给出了具体的证明步骤&#xff0c;但是还是有些省略&#xff0c;此文章是对主定理进行了完全的证明&#xff1b; 主定理的证明大致分为两个阶段&#xff1a; (1)假设n为b的整数次幂&#xff0c;如1,b,b^…

主定理(递归式分析)

上图来自《算法导论》 其意思为&#xff1a; 令a≥1&#xff0c;b>1都是常数&#xff0c;f(n)是一个函数 T&#xff08;n&#xff09;是定义在非负整数上的递推式&#xff1a; 1、对某个常数&#xff0c;有&#xff0c;则 2、若&#xff0c;则 3、对某个常数&#xff…

主定理学习及理解

主定理证明 请参考该文章: https://wenku.baidu.com/view/993d716a84868762cbaed522.html 主定理理解运用 看完上面的推导证明, 想必对主定理的推导有了一定理解, 那么又如何理解运用呢? 先晒下公式: 公式大致阐明了三种情况: f(n) < nlogb a, 则取时间复杂度为O(nlogb…

主定理

《目录》 使用主定理求解递归式? 算例 ?证明主定理 使用主定理求解递归式 主定理是分治算法分析中非常重要的定理。 如&#xff0c;我们要处理一个 规模为 的问题通过分治&#xff0c;得到 个规模为 的问题&#xff0c;分解子问题和合并子问题的时间是 &#xff1a; 在上…

主定理(Master Theorem)

主定理是分析分治算法时间复杂度很重要的一个定理。 我们之前对于一个递归类的代码进行时间复杂度分析&#xff0c;一般会采用递归树的方式&#xff0c;下面我们先介绍一下递归树的方式&#xff0c;理解之后&#xff0c;再引入主定理的相关内容。 分治的介绍 分治算法总是将…

主定理(Master Theorem) 及其应用

主定理"Master Theorem" 一、主定理(Master Theorem)二、应用举例 在分析算法的时候&#xff0c;我们经常需要分析递归算法的时间复杂度。 一、主定理(Master Theorem) 主定理适用于求解如下递归式算法的时间复杂度&#xff1a; 其中&#xff1a; n 是问题规模大…

2020.10.27【GWAS】丨使用vcftools绘制pi(θπ) 选择消除分析图

这两天在整理GWAS流程&#xff0c;发现绘制θπ选择消除分析图在网上只能找到计算π的代码&#xff0c;但是没有绘图代码&#xff0c;于是自己搞了一下&#xff0c;供大家参考。 vcftools --vcf AxiomGT1.calls.vcf --window-pi 1000 --window-pi-step 1000 --out GT1_pi 生成…

使用vcftools或者gcta计算群体间固定指数(Fixation index,FST)

下列所用到的数据均为千人基因组数据库 1、通过vcftools计算FST 命令行如下&#xff1a; ./vcftools --vcf input_data.vcf --weir-fst-pop population_1.txt --weir-fst-pop population_2.txt --out pop1_vs_pop2 其中&#xff0c;input_data.vcf就是输入的vcf格式 population…

那些在vcftools安装上踩的坑

[TOC]那些在vcftools上踩的坑 那些在vcftools安装上踩的坑 近期由于学习需要所以需要安装vcftools做基因比对分析。然后的然后就各种问题来了… vcftools在kail linux 系统下安装 老生常谈的话题就直接上代码吧。 // 这个想必大家都很熟悉 tar -zxvf vcftools_0.1.13.tar.…