百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 编程文章 > 正文

超详细的linux部署mysql5.7实战

qiyuwang 2025-03-12 20:08 5 浏览 0 评论

最近新购置一台阿里云4核8G服务器,需要部署mysql,网上安装教程很多,但是由于安装版本以及部署环境不同,出现的问题也是不一样的,需要花时间去处理异常的问题,对于非运维出身的同学或是新手,有安装包和安装文档进行详细记录一下能省很多时间,所以这里记录一下相关操作.这里购置的服务器配置信息:ubuntu16.04 64位.mysql官网下载地址:MySQL :: MySQL Downloads.安装版本:
mysql-5.7.16-linux-glibc2.5-x86_64.tar.gz
,快捷下载地址:Linux部署mysql,版本号
:mysql-5.7.16-linux-glibc2.5-x86_64.tar.gz-Linux文档类资源-CSDN文库
,已提供下载安装包以及my.cnf配置文件.以后不用每次去官网下载.下面是具体的安装步骤以及阿里云安全组配置。

1.创建安装目录

Bash
mkdir /usr/server/mysql

2.解压安装包(/usr/server/mysql下执行):

Bash
tar -xvf mysql-5.7.16-linux-glibc2.5-x86_64.tar.gz

解压结束之后会在/usr/server/mysql下创建
mysql-5.7.16-linux-glibc2.5-x86_64文件夹.

3.创建mysql数据存储目录(/usr/server/mysql/mysql-5.7.16-linux-glibc2.5-x86_64下执行):

mkdir -p data

mkdir -p表示允许在创建的文件夹下创建子目录

创建子目录(
/usr/server/mysql/mysql-5.7.16-linux-glibc2.5-x86_64/data下执行):

mkdir -p mysql

4.创建mysql组和用户并进行授权(任意目录下依次执行)

groupadd mysql
useradd -r -g mysql mysql
chown mysql:mysql -R /usr/server/mysql/mysql-5.7.16-linux-glibc2.5-x86_64/data/mysql

chown[选项]...[所有者][:[组]]文件... -R处理指定目录以及其子目录下的所有文件

5.编辑配置文件my.cnf

5.1查找my.cnf 位置(根目录下执行):

find / -name my.cnf

到这一步很多同学可能找不到my.cnf.这个和安装版本有关系.这里只介绍5.7.16版本情况,此安装版本中没有my.cnf,可以使用my-default.cnf,将其重命名为my.cnf移动到/etc下。

复制并重命名(
/usr/server/mysql/mysql-5.7.16-linux-glibc2.5-x86_64/support-files下执行):

mv /usr/server/mysql/mysql-5.7.16-linux-glibc2.5-x86_64/support-files/my-default.cnf /etc/my.cnf

my-default.cnf默认生成于
/usr/server/mysql/mysql-5.7.16-linux-glibc2.5-x86_64/support-files/

5.2编辑配置文件my.cnf

编辑配置文件my.cnf(/etc下执行):

vim /etc/my.cnf

文件中添加内容:

[mysqld]
bind-address=0.0.0.0
port=3306
user=mysql
basedir=/usr/server/mysql/mysql-5.7.16-linux-glibc2.5-x86_64
datadir=/usr/server/mysql/mysql-5.7.16-linux-glibc2.5-x86_64/data/mysql
socket=/tmp/mysql.sock
log-error=/usr/server/mysql/mysql-5.7.16-linux-glibc2.5-x86_64/data/mysql/mysql.err
pid-file=/usr/server/mysql/mysql-5.7.16-linux-glibc2.5-x86_64/data/mysql/mysql.pid
#character config
character_set_server=utf8mb4
symbolic-links=0

或是直接使用第三方连接工具(比如说fileZilla)下载下来之后编辑好之后重新上传即可。

6.数据库初始化(/usr/server/mysql/mysql-5.7.16-linux-glibc2.5-x86_64/bin下执行):

./mysqld --defaults-file=my.cnf位置 --basedir=mysql安装目录 --datadir=数据存放目录 --user=mysql --initialize

本案例中安装示例:

./mysqld --defaults-file=/etc/my.cnf --basedir=/usr/server/mysql/mysql-5.7.16-linux-glibc2.5-x86_64/ --datadir=/usr/server/mysql/mysql-5.7.16-linux-glibc2.5-x86_64/data/mysql/ --user=mysql --initialize

7.启动mysql

先将mysql.server放置到/etc/init.d中 并命名为mysqld,当时没有移动导致启动的时候出现异常:Unit mysqld.service not found.

cp /usr/server/mysql/mysql-5.7.16-linux-glibc2.5-x86_64/support-files/mysql.server /etc/init.d/mysqld

依次启动mysql客户端和服务端(
/usr/server/mysql/mysql-5.7.16-linux-glibc2.5-x86_64下执行):

service mysql start
sudo service mysqld start

查看mysql服务是否启动(任意目录执行):

ps -ef|grep mysql

8.登录数据库

8.1启动成功之后登录数据库

查看数据库初始密码(任意目录执行):

cat /usr/server/mysql/mysql-5.7.16-linux-glibc2.5-x86_64/data/mysql/mysql.err

初始密码:

数据库登录(
/usr/server/mysql/mysql-5.7.16-linux-glibc2.5-x86_64/bin执行):

./mysql -u root -p

输入之前复制的初始化密码即可登录。

8.2数据库修改初始登录密码

登录数据库成功之后依次执行:

SET PASSWORD = PASSWORD(自定义密码);
ALTER USER 'root'@'localhost' PASSWORD EXPIRE NEVER;
flush privileges;

9.阿里云开放安全组端口

入方向新增自一条记录,mysql端口3306指定可以允许访问的ip。



10.第三方工具连接mysql

第一次使用第三方工具,比如说sqlyog客户端进行远程连接,会遇到的异常:`Host ‘xxx.xxx.xxx.xxx’(本地ip) is not allowed to connect to this MySQL server`,原因是root用户允许访问的ip仅为localhost,需要进行修改.处理方式如下:

登录数据库(依次执行以下命令):

use mysql;
select host from user where user = 'root';
update user set host = '%' where user = 'root';
flush privileges;



按照上述操作步骤,第三方客户端连接成功,问题解决!

补充:mysql服务启动关闭以及运行状态查看命令:

关闭mysql服务(任意目录下执行):

service mysqld stop

查询mysql服务端运行状态(任意目录下执行):

service mysqld status

说明:本文没有进行开机启动mysql的配置,因为购买的阿里云服务器是一直运行的,非特殊情况不会进行频繁启动.如果有特殊情况导致阿里云服务器关闭,只需要在重启服务器之后重新启动一下mysql就可以.

以上是阿里云服务器中部署mysql的实际操作步骤,如果感觉对你所有帮助欢迎评论区留言点赞!

相关推荐

程序员都用什么电脑?适合编程笔记本电脑推荐

适合程序员的笔记本电脑首先应该满足小巧轻便这个需求,然后才是性能因素,一个标准的程序员必定能够随时随地改BUG,所以可以优先考虑苹果MacBookPro,由于其MacOS就是Linux内核,做开...

Linux(debian)内核编译(二)虚拟网卡实例

2.10.虚拟网卡TUN/TAP...

老毛子要上天 冬天竟然拿矿机当暖气

2017-12-2814:10:55作者:李鑫我们都知道矿机在实际工作当中会产生出大量的热能,近日俄罗斯就有人用Comino挖矿电脑来充当暖气的效果,这台电脑不需要特别安装,也没有多余的接口,同样...

qemu linux内核(5.10.209)开发环境搭建

版本信息宿主机:ubuntu20.04.6LTS(FocalFossa)虚拟机:ubuntu20.04.6LTS(FocalFossa)安装宿主机的步骤省略,和一般的在vmware中安...

Ubuntu 16.04 LTS现已正式支持IBM LinuxONE与z Systems

4月22号的时候,Canonical很高兴地宣布了Ubuntu16.04LTS(XenialXerus)已正式支持IBMzSystems和LinuxONE大型机的消息。该长期支持版本经历了六...

号称最强大深度学习笔电,雷蛇推出Lambda Tensorbook笔记本电脑

IT之家4月13日消息,深度学习公司Lambda与雷蛇合作,发布了新的LambdaTensorbook笔记本电脑,号称是世界上为深度学习设计的最强大的笔记本电脑,可以使用Linux...

电脑连 WiFi 全攻略!3 步搞定 + 疑难解答

电脑搜不到WiFi?输对密码却连不上?看视频卡、打游戏延迟高?别慌!不管你用Win/Mac还是Linux,这篇保姆级教程从连接步骤到故障排查全覆盖,10分钟让你告别“网络黑洞”!一、基础连...

linux 网卡bond模式

如何进行Linux网络绑定网络绑定简介在Debian10Buster(DHCP)上配置有线和无线网络绑定...

在 Ubuntu Server 上配置静态 IP 地址

Ubuntu17.10之前版本编辑/etc/network/interfaces文件重启网络服务或重启服务器来应用新的配置...

爬虫搞崩网站后,程序员自制“Zip炸弹”反击,6刀服务器成功扛住4.6万请求

...

Linux网络运维脚本实战示例:配置下发

在Linux网络运维场景中,自动化配置下发是提高效率的关键。一个示例展示如何编写一个Shell脚本,用于远程批量部署网络配置到多台服务器。本示例将使用SSH无密码登录和Ansible自动化工具来简化和...

KVM 虚拟机网络连接异常的排查方法

#KVM虚拟机网络连接异常的排查方法当KVM虚拟机出现网络连接问题时,可以按照以下系统化的方法进行排查和解决:##一、基础网络检查###1.检查虚拟机网络状态```bash#在虚拟机内部检...

技术宅教你linux开发板直连电脑ubuntu

1:我使用的是笔记本,台式机类似。原理:和开发板挂载到路由器或者交换机不一样。我们通过笔记本电脑直连,是将笔记本的物理网卡作为一个桥梁,把开发板和虚拟机ubuntu连接在一起。连接好以后可以使用NFS...

Ubuntu 25.04发行版登场:Linux 6.14内核,带来多项技术革新

IT之家4月18日消息,科技媒体linuxiac昨日(4月17日)发布博文,报道称代号为PluckyPuffin的Ubuntu25.04发行版正式上线,搭载最新Linu...

【故障解决】麒麟系统右下角网络图标取消显示叹号

原文链接:【故障解决】麒麟系统右下角网络图标取消显示叹号...

取消回复欢迎 发表评论: