前言

最近项目上线,开始给用户测试了。搞下来好多台服务器,自然要装一个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. mac上的mysql管理工具sequel pro

    https://blog.csdn.net/wan_zaiyunduan/article/details/54909389 以前用过Plsql.Navicat.Workbench,现在换到mac上,用 ...

  2. jq动画和停止动画

    使用jq 实现动画循环效果 <!DOCTYPE html> <html lang="en"> <head> <meta charset=& ...

  3. java面向接口编程之制定标准和简单工厂模式

    制定一个标准,让别人去实现或者说满足它! Eg: interface USB{//定义USB标准 void useUSB();//USB有使用USB的行为 } 简单工厂模式 构建一个工厂出来,在里面进 ...

  4. nginx调用PHP有sock方式和端口方式

    nginx调用PHP有sock方式和端口方式 1.确认nginx已经调用了php;2.先确认你的nginx使用什么方式调用PHP:3.如果使用端口方式,端口对不对应,如果使用SOCK方式,那么路径对不 ...

  5. InetlliJ IDEA的快捷键及各种配置

    在IDEA中新建Maven工程,之后再新建一个Maven模块,此时在模块中的src/main/java中右键新建Java文件时,发现只能新建普通文件,不能新建Java类了,怎么回事,和eclipse的 ...

  6. 2018-8-10-WPF-判断调用方法堆栈

    title author date CreateTime categories WPF 判断调用方法堆栈 lindexi 2018-08-10 19:16:53 +0800 2018-2-13 17: ...

  7. 2018-11-8-WPF-获取下载内容长度

    title author date CreateTime categories WPF 获取下载内容长度 lindexi 2018-11-08 20:18:15 +0800 2018-11-08 20 ...

  8. vue的路由带参数和取参数,watch路由监听

    1.写在html里 <router-link :to="{path:'/goldShop/goodsInfo',query: { id:item.id }}" class=& ...

  9. 11大Java开源中文分词器的使用方法和分词效果对比,当前几个主要的Lucene中文分词器的比较

    本文的目标有两个: 1.学会使用11大Java开源中文分词器 2.对比分析11大Java开源中文分词器的分词效果 本文给出了11大Java开源中文分词的使用方法以及分词结果对比代码,至于效果哪个好,那 ...

  10. js 处理json

    json 分为两种结构  数组  对象 对象  { } 对象里的键值对  1.键值对之间用冒号链接  2.键必须用“”包裹  3.值如果是字符串  就用“”包裹   如果是数字  则不需要 4.键值对 ...