在Linux环境下部署MySql服务
之前有下载部署过几次,但是每次都会踩一些坑。特此记录在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:
- chown -R root:root ./
- 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服务的更多相关文章
- Linux环境下部署svn服务详解
说明 环境: 操作系统:centos 8.0 IP:39.100.228.13 安装 用ROOT账号登录,在控制台执行以下命令,一直默认安装就好可以了. [root@localhost ~]#yum ...
- Linux环境下安装mysql服务
我使用的是阿里云的ECS服务,系统是CentOS7,安装mysql版本是5.7 第一步,通过 wget -i -c http://dev.mysql.com/get/mysql57-community ...
- 在Mac OS环境下安装MySQL服务
在Mac OS环境下安装MySQL服务 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 我之前介绍过window环境下安装mysql服务,以及在Linux环境下安装mysql服务,今 ...
- Django Linux环境下部署CentOS7+Python3+Django+uWSGI+Nginx(含Nginx返回400问题处理、防火墙管理)
本文将介绍如何在Linux系统上部署Django web项目,本次部署基于下面的架构: CentOS7+ Python3.5 + Django1.11 + uWSGI + Nginx 亲测可行!!按照 ...
- linux 环境下部署 Asp.Net Core 项目 访问 oralce 数据库
1.ASP.NET Core 是一个跨平台的高性能开源框架,可以部署到Linux上,那项目部署在Linux上有哪些好处呢? 1.linux硬件需求小,大部分版本免费,成本低. 2.linux的用户管理 ...
- Linux环境下部署完JDK后运行一个简单的Java程序
前言 前一篇文章详细讲解了如何在Windows环境下安装虚拟机+Linux系统,并且成功部署了JDK. 不过部署完JDK之后,我们判断部署是否成功的依据是看"java -version&qu ...
- linux环境下搭建MySQL
linux下搭建mysql的方式很多,网上也详解了很多种搭建方式,有直接yum的.有rpm的..总之,“坑”是层出不穷,有相关文件依赖性.权限.GPG keys等等. 本人也在今天搭建了一下.是出“坑 ...
- Linux环境下安装MySQL数据库
Linux安装mysql服务分两种安装方法: (1).源码安装,优点是安装包比较小,只有十多M,缺点是安装依赖的库多,安装编译时间长,安装步骤复杂容易出错: (2).使用官方编译好的二进制文件安装,优 ...
- Linux 环境下安装Mysql的步骤
一,以linux cent 6.9 安装mysql 5.6.39为例#下载安装包wget --no-check-certificate https://dev.mysql.com/get/Downlo ...
随机推荐
- java复制项目中的补丁,完整的包路径
package com.bytter.audit.iface.util; import java.io.BufferedInputStream; import java.io.BufferedOutp ...
- 把一个树莓派SD卡系统和文件迁移到空SD卡中
1.打开win32diskimager软件读出SD卡树莓派系统和文件到电脑的镜像文件中, 2.使用 SD card formatter 格式化SD卡 3.再用win32diskimager往空SD卡写 ...
- legend3---PHP使用阿里云短信服务
legend3---PHP使用阿里云短信服务 一.总结 一句话总结: 使用步骤照官方文档,代码拷贝即可 1.php使用阿里云短信服务的步骤? 入驻阿里云->开通短信服务->获取Access ...
- java jar 服务自启动存在的坑及解决办法
为了在服务器重启的时候,java程序能够自动重启,我们通常把它加到服务里面 ln -s /full/path/to/jar /etc/init.d/service_name # start servi ...
- JWT原理和使用
jwt JSON Web Tokens,是一种开发的行业标准RFC 7519,用于安全的表示双方之间的声明.目前,jwt广泛的用在系统的用户认证方面,特别是前后端分离项目. 1.jwt认证流程 在项目 ...
- Java中判断两个列表是否相等
CollectionUtils.isEqualCollection(final Collection a, final Collection b) CollectionUtils工具类中有一个查看两个 ...
- JVM参数配置及内存调优
一.JVM常见参数配置 堆内存相关参数 参数名称 含义 默认值 -Xms 初始堆大小 物理内存的1/64(<1GB) 默认(MinHeapFreeRatio参数可以调整)空余堆内存小于40% ...
- 大sd卡 裂开了,写保护掉了。重新装好后,被写保护的解决办:
大sd卡 裂开了,写保护掉了.重新装好后,被写保护的解决办: 1.用烙铁把写保护附近的塑料往外顶一点点,就ok 别太热,也别劲太大.容易过,不能破坏原来的部分. 解决问题. 总结: 写保护,就是检 ...
- cross appdomain access
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.T ...
- mysql5.6修改密码并授权所有远程用户可登陆
1.my.ini文件,删除最后一行的"skip-grant-tables 2.执行"use mysql;",使用mysql数据库; 3.执行:update mysql.u ...