数据库 
首页 > 数据库 > 浏览文章

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

(编辑:jimmy 日期: 2024/11/15 浏览:3 次 )

前言

由于在学习过程中需要安装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无法完成,最后咨询了阿里云售后工程师和查阅了一些文档解决了我所遇到的问题,特此记录!

上一篇:解决MySQL读写分离导致insert后select不到数据的问题
下一篇:mysql innodb的重要组件汇总