前言

最近项目上线,开始给用户测试了。搞下来好多台服务器,自然要装一个mysql的服务器。想想广大博友应该都会遇到如何装mysql的问题,就此分享,给大家一个安装指南。供大家以后安装的时候,提高效率,瞬间完事。

准备工作

当然是准备一个mysql5.7.25的tar包啦!自行百度下载吧!留言找我要也行!

安装步骤

检查是否有老版本的mysql

检查是否有老版本

rpm -qa | grep mysql

输入后,没有任何信息弹出,证明机器上没有老版本的mysql。如果有,就会展示出mysql的版本。像是这样

mysql-libs-5.1.52-1.el6_0.1.x86_64

如果有,我们要将它卸载掉,卸载命令如下:

rpm -e mysql-libs-5.1.52-1.el6_0.1.x86_64  // 普通删除模式
rpm -e --nodeps mysql-libs-5.1.52-1.el6_0.1.x86_64  // 强力删除模式,如果使用上面命令删除时,提示有依赖的其它文件,则用该命令可以对其进行强力删除

检查完mysql后,再检查是否有老版本的mariadb数据库,如果有的话,仍然删除。步骤与上方类似。

rpm -qa | grep mariadb
rpm -e --nodeps mariadb-libs-5.5.56-2.el7.x86_64

上传

将我们下载好的mysql5.7.25的tar包上传到服务器目录/data/mysql,需要先新建这个目录。下文中提到的目录,如果没有的话都需要大家先建立。

解压tar包

cd /opt/mysql
tar -zxvf mysql-5.7.25-linux-glibc2.12-x86_64.tar.gz

对解压后的文件夹进行重命名,方便以后的操作。

mv mysql-5.7.25-linux-glibc2.12-x86_64 mysql-5.7.25

添加系统的mysql组和用户

先查看系统中是否已经有了。

cat /etc/group | grep mysql
#类似
mysql:x:490:
cat /etc/passwd | grep mysql
#类似
mysql:x:496:490::/home/mysql:/bin/bash

如果上面的cat命令都没有查出结果,则进行新建用户和组。

groupadd mysql
useradd -r -g mysql mysql
#useradd -r参数表示mysql用户是系统用户,不可用于登录系统

安装数据库

创建data目录

cd mysql-5.7.25
mkdir data

将/opt/mysql/mysql-5.7.25的所有者及所属组改为mysql

chown -R mysql.mysql /opt/mysql/mysql-5.7.25

在/opt/mysql/mysql-5.7.25/support-files目录下创建my_default.cnf,并将如下内容放入进去。

[mysqld]
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES basedir = /opt/mysql/mysql-5.7.25
datadir = /opt/mysql/mysql-5.7.25/data
port = 3306
socket = /tmp/mysql.sock
character-set-server=utf8 log-error = /opt/mysql/mysql-5.7.25/data/mysqld.log
pid-file = /opt/mysql/mysql-5.7.25/data/mysqld.pid

将该文件拷贝到etc下,如果提示已经存在,则选择覆盖。

cp support-files/my_default.cnf /etc/my.cnf

初始化mysql数据库

cd /opt/mysql/mysql-5.7.25
./bin/mysqld --initialize --user=mysql --basedir=/opt/mysql/mysql-5.7.25/ --datadir=/opt/mysql/mysql-5.7.25/data/

初始化完成后,查看日志

/opt/mysql/mysql-5.7.25/data/mysqld.log

通过日志可看到临时密码

[Note] A temporary password is generated for root@localhost: ee4fa12as!da

把启动脚本放到开机初始化目录

cp support-files/mysql.server /etc/init.d/mysql

启动mysql的服务

service mysql start

登录mysql,密码为我们在日志中看到的初始化密码

cd /opt/mysql/mysql-5.7.25
./bin/mysql -u root -p

修改密码

mysql> set password=password('123456');
mysql> grant all privileges on *.* to root@'%' identified by '123456';
mysql> flush privileges;

添加远程访问权限。

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

重启mysql

service mysql stop
service mysql start

或者

service mysql restart

总结

至此mysql就成功安装完毕了。

需要注意的问题:

之前装的时候,在启动的时候,会报找不到目录,我们可以进入/etc/init.d,找到下面的mysql修改里面的basedir,修改为我们实际安装的data目录。重启即可。

linux下安装mysql5.7.25详细教程的更多相关文章

  1. Linux下安装mysql-5.7.28详细步骤

    一.下载Mysql 下载地址:https://downloads.mysql.com/archives/community/ 二.环境配置 检测系统是否自带Mysql # rmp -qa|grep m ...

  2. linux下安装mysql-5.7.25

    1.下载对应安装包 https://dev.mysql.com/downloads/mysql/ 2.卸载旧版本mysql 列出旧版本MySql的组件列表  rpm -qa | grep mysql ...

  3. Linux下安装mysql5.6.11(找点有用的信息太费劲)(转)

    Linux下安装mysql5.6.11(找点有用的信息太费劲) (2013-04-25 10:25:09)     1.申请阿里云Linux服务器 昨天在阿里云申请了一个免费试用5天的Linux云服务 ...

  4. Linux下安装mysql5.7

    Linux下安装mysql5.7   首先准备好mysql5.7.17的安装包,安装包放在  /data/software 目录下 进入到 /usr/local 目录下,解压mysql安装包 命令: ...

  5. linux下安装mysql5.7方法与常见问题

    linux上安装mysql5.7 1.下载tar包,这里使用wget从官网下载 wget https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7 ...

  6. 64位Linux下安装mysql-5.7.13-linux-glibc2.5-x86_64 || 转载:http://www.cnblogs.com/gaojupeng/p/5727069.html

    由于公司临时让将Oracle的数据移植到mysql上面,所以让我在公司服务器上面安装一下mysql.下面就是我的安装过程以及一些错误解决思路.其实对于不同版本安装大体都有差不多. 1. 从官网下载 m ...

  7. VMware虚拟机下安装CentOS系统超详细教程

    链接:https://jingyan.baidu.com/article/fdffd1f8736173f3e98ca1e3.html 1.步骤一.工具准备 1.物理计算机一台 配置要求: 操作系统:w ...

  8. Linux下安装mysql-5.7.24

    Mysql数据库的安装对于开发者来说,是我们必然会面对的问题,它的安装过程其实并不复杂,并且网络上的安装教程也非常多,但是对于新手来说,各种不同形式的安装教程,又给新手们带来了要选择哪种方式进行安装的 ...

  9. Linux下安装MySQL5.6

    传送门:http://www.jianshu.com/p/f4a98a905011 字数802 阅读164 评论0 喜欢4 环境:1.操作系统:CentOS release 6.8 (Final)2. ...

随机推荐

  1. 上传图片保存到MySql数据库并显示--经验证有效

    以下方法仅供参考,只是介绍下这一种方法而已.欢迎指正!! 前台(image.html):  1<html> 2<head> 3<title>上传图片</tit ...

  2. WebService 基础知识点和用Postman调试

    阅读连接:Retrofit 用Soap协议访问WebService 详解 参考 1.java发HTTP POST请求(内容为xml格式) 2. android解析XML总结(SAX.Pull.Dom三 ...

  3. Reasoning and Learing学习笔记

    Assignment 1 question 1 1.clisp安装及运行->参考博客 2.参数为列表,参考PPT 3.把嵌套列表变成非嵌套->题目P07 代码

  4. [转]Win10下安装Linux子系统

    工作以来一直DotNet系偏C/S, 接触Web开发的时间也不长, 现在主要偏向Web全栈方向, 一直对Linux系统心生向往, 夜深了娃睡了, 打开老旧的笔记本来折腾一下. 准备工作 控制面板 &g ...

  5. MAMP "403 Forbidden You don't have permission to access / on this server."

    2015年01月22日 17:27:31 阅读数:3488 用MAMP搭建本地服务器的时候,设置好ip和端口等属性之后,浏览器访问,报 403错误: Forbidden You don't have ...

  6. The 10th Shandong Provincial Collegiate Programming Contest H.Tokens on the Segments(贪心+优先级队列 or 贪心+暴力)

    传送门 •题意 二维平面上有 n 条线段,每条线段坐标为 $(l_i,i),(r_i,i)$: 平面上的每个整点坐标上都可以放置一枚硬币,但是要求任意两枚硬币的横坐标不相同: 问最多有多少条线段可以放 ...

  7. P1043 查找小于x的最大元素

    题目描述 现在告诉你一个长度为 \(n\) 的有序数组 \(a_1, a_2, ..., a_n\) ,以及 \(q\) 次询问,每次询问会给你一个数 \(x\) ,对于每次询问,你需要输出数组 \( ...

  8. H3C通过端口ID决定端口角色

  9. linux 阻塞 open 作为对 EBUSY 的替代

    当设备不可存取, 返回一个错误常常是最合理的方法, 但是有些情况用户可能更愿意等待 设备. 例如, 如果一个数据通讯通道既用于规律地预期地传送报告(使用 crontab), 也用于根据 用户的需要偶尔 ...

  10. LuoguP5464 缩小社交圈

    LuoguP5464 缩小社交圈 背景:洛谷七月月赛T4 题目大意给定\(n\)个点,每个点的权值对应着一个区间\([l_i,r_i]\),两个点\(i,j\)有边当且仅当他们权值的并集不为空集,问有 ...