之前有下载部署过几次,但是每次都会踩一些坑。特此记录在liunx下部署安装mysql的基本步骤:

1、卸载老版本的mysql

  • find / -name mysql|xargs rm -rf     查找并删除mysql有关的文件

2、可通过xftp将下载的mysql的安装包上传至linux服务器中,解压至 /usr/local 目录下

  • tar -zxvf mysql-5.6.45-linux-glibc2.12-x86_64.tar.gz -C /usr/local

3、先检查是否有mysql用户组和mysql用户,若没有没有需要添加mysql用户组和mysql用户

  • groups mysql     # 检查是否存在mysql用户组和mysql用户,出现下述图片,证明mysql用户组和mysql用户已存在。
  • groupadd mysql       # 添加mysql用户组
  • useradd -r -g mysql mysql       # 添加mysql用户

4、进入mysql目录更改权限(修改当前目录拥有者为mysql)

  • cd mysql/        # 进入mysql目录
  • chown -R mysql:mysql ./     # 修改当前目录下的群组和用户为mysql

5、执行安装脚本

  • ./scripts/mysql_install_db --user=mysql    # 执行安装的脚本时,系统报错,具体可见下述图片

  • 解决方法 :安装autoconf库
  • 命令:yum -y install autoconf  # 此包安装时会安装Data:Dumper模块
  • 安装完autoconf库之后,再运行  ./scripts/mysql_install_db --user=mysql 时,可能会出现如下错误。
  • [root@iz2ze3g1c5ttso3f78zgo2z mysql]# ./scripts/mysql_install_db --user=mysql
    Installing MySQL system tables..../bin/mysqld: error while loading shared libraries: libaio.so.1: cannot open shared object file: No such file or directory

  • 若是出现上述错误,需要检查和安装libaio。
  • rpm -qa|grep libaio      # 检查libaio是否安装
  • yum -y install libaio-devel.x86_64  # 安装libaio
  • 最后再次运行 ./scripts/mysql_install_db --user=mysql ,即可安装成功。具体可见附件图片

  • 安装完之后修改当前目录拥有者为root用户,修改data目录拥有者为mysql:
    1. chown -R root:root ./   
    2. chown -R mysql:mysql data

6、启动mysql,在mysql目录下执行 ./support-files/mysql.server start  ,但是系统报错。原因是log文件无权限,我们可以通过更改配置修改log文件指向,并创建一个log文件来解决

  • vim /etc/my.cnf
  • 修改前:

  • 修改后:

  • 修改内容为:

[mysqld_safe]
log-error=/usr/local/mysql/logs/mysqld.log
pid-file=/var/run/mysql/mysql.pid

  • 创建log文件,并修改文件权限:

[root@iz2ze3g1c5ttso3f78zgo2z etc]# cd /usr/local/mysql/

[root@iz2ze3g1c5ttso3f78zgo2z mysql]# mkdir logs

[root@iz2ze3g1c5ttso3f78zgo2z mysql]# cd logs

[root@iz2ze3g1c5ttso3f78zgo2z logs]# echo "" > /usr/local/mysql/logs/mysqld.log

[root@iz2ze3g1c5ttso3f78zgo2z logs]# chown -R mysql:mysql /usr/local/mysql/logs/mysqld.log

[root@iz2ze3g1c5ttso3f78zgo2z logs]# cd /usr/local/mysql

[root@iz2ze3g1c5ttso3f78zgo2z mysql]# ./support-files/mysql.server start

 7、登录mysql ,可使用该命令进行登录  ./bin/mysql -h127.0.0.1 -uroot -p

8、登录成功之后,需要设置mysql的密码

  • ./bin/mysqladmin -u root password 'root'  # 将root用户的密码设置为“root”

设置完成之后,可通过 select user,host,password from mysql.user;

也可以将root用户在其他host下的登录密码也设置一下,通过这种方式(update user set password=passworD("root") where user='root';)修改密码后需要允许一下:flush privileges;

  • update user set password=passworD("root") where user='root';
  • flush privileges;

9、增加远程登录权限,此时我们还只能通过本地机器登录mysql, 无法在别的机器上进行远程登录,想要远程登录还要权限开启:

  • mysql> grant all privileges on *.* to root@'%' identified by 'root';
  • Query OK, 0 rows affected (0.00 sec)
  • mysql> flush privileges;
  • Query OK, 0 rows affected (0.00 sec)

10、使用sqlyog连接部署的mysql服务,检查mysql是否能够被远程连接。

————————————————

版权声明:本文为CSDN博主「rchm8519」的原创文章,遵循CC 4.0 by-sa版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/rchm8519/article/details/84194562

在Linux环境下部署MySql服务的更多相关文章

  1. Linux环境下部署svn服务详解

    说明 环境: 操作系统:centos 8.0 IP:39.100.228.13 安装 用ROOT账号登录,在控制台执行以下命令,一直默认安装就好可以了. [root@localhost ~]#yum ...

  2. Linux环境下安装mysql服务

    我使用的是阿里云的ECS服务,系统是CentOS7,安装mysql版本是5.7 第一步,通过 wget -i -c http://dev.mysql.com/get/mysql57-community ...

  3. 在Mac OS环境下安装MySQL服务

    在Mac OS环境下安装MySQL服务 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 我之前介绍过window环境下安装mysql服务,以及在Linux环境下安装mysql服务,今 ...

  4. Django Linux环境下部署CentOS7+Python3+Django+uWSGI+Nginx(含Nginx返回400问题处理、防火墙管理)

    本文将介绍如何在Linux系统上部署Django web项目,本次部署基于下面的架构: CentOS7+ Python3.5 + Django1.11 + uWSGI + Nginx 亲测可行!!按照 ...

  5. linux 环境下部署 Asp.Net Core 项目 访问 oralce 数据库

    1.ASP.NET Core 是一个跨平台的高性能开源框架,可以部署到Linux上,那项目部署在Linux上有哪些好处呢? 1.linux硬件需求小,大部分版本免费,成本低. 2.linux的用户管理 ...

  6. Linux环境下部署完JDK后运行一个简单的Java程序

    前言 前一篇文章详细讲解了如何在Windows环境下安装虚拟机+Linux系统,并且成功部署了JDK. 不过部署完JDK之后,我们判断部署是否成功的依据是看"java -version&qu ...

  7. linux环境下搭建MySQL

    linux下搭建mysql的方式很多,网上也详解了很多种搭建方式,有直接yum的.有rpm的..总之,“坑”是层出不穷,有相关文件依赖性.权限.GPG keys等等. 本人也在今天搭建了一下.是出“坑 ...

  8. Linux环境下安装MySQL数据库

    Linux安装mysql服务分两种安装方法: (1).源码安装,优点是安装包比较小,只有十多M,缺点是安装依赖的库多,安装编译时间长,安装步骤复杂容易出错: (2).使用官方编译好的二进制文件安装,优 ...

  9. Linux 环境下安装Mysql的步骤

    一,以linux cent 6.9 安装mysql 5.6.39为例#下载安装包wget --no-check-certificate https://dev.mysql.com/get/Downlo ...

随机推荐

  1. matplotlib画图——条形图

    一.单条 import numpy as np import matplotlib.pyplot as plt N = 5 y1 = [20, 10, 30, 25, 15] y2 = [15, 14 ...

  2. C语言:结构体中(.)和(->)的区别

    https://blog.csdn.net/faihung/article/details/79190039 这虽然是个小问题,但有时候很容易让人迷惑,因为有的时候用混淆了,程序编译不通过. 下面说说 ...

  3. Django学习之缓存

    1.配置 2.应用 由于Django是动态网站,所有每次请求均会去数据进行相应的操作,当程序访问量大时,耗时必然会更加明显,最简单解决方式是使用:缓存.缓存将一个某个views的返回值保存至内存或者m ...

  4. EMQ插件通过HTTP连接认证服务器实现认证

    需求 在EMQ中添加认证插件,将到来的MQTT连接的ClientID.UserName.Password通过HTTP协议发送到认证服务器,用返回的数据决定是否允许该连接: 在连接时和断开时向服务器发送 ...

  5. Vue知识整理8:条件、URL、点击

    1.通过v-if实现对条件的判断和执行: 2.通过v-bind:href实现对url地址的绑定,其中url写在data中: 3.通过@click="click1"实现点击事件,其中 ...

  6. rename()函数(包含更改索引列列名的方法)

    1 rename()可以更换列名和行名,必须写上columns或index,否则无效 import pandas as pd df = pd.DataFrame({'a':[1,2], 'b':[3, ...

  7. CentOS安Elasticsearch

    工作中有需求用到es做数据分析和日志搜索的,整理记录一下安装部署过程.ElasticSearch是一个基于Lucene的搜索服务器.它提供了一个分布式多用户能力的全文搜索引擎,基于RESTful we ...

  8. docker nginx ssl

    docker run -d -p 80:80 -p 443:443 -v $(pwd)/conf/conf.d:/etc/nginx/conf.d -v $(pwd)/cert:/etc/nginx/ ...

  9. 用seborn的函数distplot(), jointplot(), pairplt()对数据的单变量分析绘图

    1.用seaborn的distplot()函数绘制直方图.参数kde = True时会把分布曲线也画出来. 如下代码所示是绘制标准正态分布的分布图 import seaborn as sns impo ...

  10. 【组策略】1.组策略介绍group policy

    组策略介绍group policy 高效学习法,念念不忘,必有回响. 分享一个高效学习思维,潜意识思考.就是在您没有大量时间的情况下,学习十分钟. 然后离开去完成别的事情的时候,大脑潜意识中还会继续思 ...