linux安装MySQL5.7记录

虚拟机未装过mysql,第一次安装mysql。自己指定安装目录,指定数据文件目录。

linux系统版本: CentOS 7.3 64位

安装源文件版本:mysql-5.7.24-linux-glibc2.12-x86_64.tar.gzip

mysql安装位置:/software/mysql-57

数据库文件数据位置:/data/mysql

安装步骤

1. 在根目录下创建文件夹/software和数据库数据文件/data/mysql

[root@localhost ~]# mkdir /software/
[root@localhost ~]# mkdir /data/mysql

2. 从官网下载相应的MySQL版本

下载安装包:https://dev.mysql.com/downloads/mysql/5.7.html#downloads

3. 解压并移动到/software目录下

[root@localhost ~]# tar -zxvf mysql-5.7.24-linux-glibc2.12-x86_64.tar.gz
[root@localhost ~]# mv mysql-5.7.24-linux-glibc2.12-x86_64/ /software/mysql-57

4. 创建mysql用户组和mysql用户

[root@localhost ~]# groupadd mysql
[root@localhost ~]# useradd -r -g mysql mysql

5. 关联myql用户到mysql用户组中

[root@localhost ~]# chown -R mysql:mysql  /software/mysql-57/
[root@localhost ~]# chown -R mysql:mysql /data/mysql/
[root@localhost ~]# chown -R mysql /software/mysql-57/
[root@localhost ~]# chown -R mysql /data/mysql

6. 更改文件夹的权限

[root@localhost ~]# chmod -R 755 /software/mysql-57/

7. 安装libaio依赖包

如果系统之前装过其他的数据库,那么依赖包可能存在,可以用命令行测试下,如果不存在就进行安装。

[root@localhost ~]# yum list installed | grep libaio
# 如果没有就进行安装
[root@localhost ~]# yum search libaio
[root@localhost ~]# yum install libaio

8. 初始化mysql命令

[root@localhost ~]# cd /software/mysql-57/bin
[root@localhost ~]# ./mysqld --user=mysql --basedir=/software/mysql-57 --datadir=/data/mysql --initialize

在执行上面命令后会出几行信息。信息的最后一行为:

# root@localhost: 后面跟的是mysql数据库登录的临时密码,各人安装生成的临时密码不一样,
# 将密码复制保存,后续登录mysql要使用
[Note] A temporary password is generated for root@localhost: ad8#*>y(f4Cq

9. 修改Mysql配置文件

[root@localhost ~]# vim /software/mysql-57/support-files/mysql.server

主要是修改相应文件夹的位置,修改为之前创建的文件夹。

mysql.server

修改前

......
if test -z "$basedir"
then
basedir=/usr/local/mysql
bindir=/usr/local/mysql/bin
if test -z "$datadir"
then
datadir=/usr/local/mysql/data
fi
sbindir=/usr/local/mysql/bin
libexecdir=/usr/local/mysql/bin
else
......

修改后

......
mysqld_pid_file_path=
if test -z "$basedir"
then
basedir=/software/mysql-57
bindir=/software/mysql-57/bin
if test -z "$datadir"
then
datadir=/data/mysql
fi
sbindir=/software/mysql-57/bin
libexecdir=/software/mysql-57/bin
else
......

将修改好的文件放入系统服务文件夹内。这样每次就可以通过service mysqld start来启动服务。

[root@localhost ~]# cp /software/mysql/support-files/mysql.server  /etc/init.d/mysqld
[root@localhost ~]# chmod 755 /etc/init.d/mysqld

my.cnf

[root@localhost ~]# vim /etv/my.cnf

修改前

[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0
# Settings user and group are ignored when systemd is used.
# If you need to run mysqld under a different user or group,
# customize your systemd unit file for mariadb according to the
# instructions in http://fedoraproject.org/wiki/Systemd [mysqld_safe]
log-error=/var/log/mariadb/mariadb.log
pid-file=/var/run/mariadb/mariadb.pid

修改后

[client]
no-beep
socket =/software/mysql-57/mysql.sock
port=3306
[mysql]
default-character-set=utf8
[mysqld]
basedir=/software/mysql-57
datadir=/data/mysql
port=3306
pid-file=/software/mysql-57/mysqld.pid
skip-name-resolve
socket = /software/mysql-57/mysql.sock
character-set-server=utf8

其中skip_name_resolve。这个参数是禁止域名解析的。

10. 启动MySQL服务

因为新版本的mysql安全启动只认 /usr/local/mysql 这个路径。所以要进行相应的修改,通常有两种方法进行修改。

  • 建立软链接
#local下没有mysql文件夹的话,新建一个
[root@localhost ~]# cd /usr/local/mysql
[root@localhost ~]# ln -s /sofware/mysql-57/bin/myslqd mysqld
  • 修改 mysqld_safe 文件
[root@localhost ~]# vim /software/mysql/bin/mysqld_safe
#将所有的/usr/local/mysql改为/software/mysql-57,保存退出

启动mysql:

[root@localhost ~]# /etc/init.d/mysqld start
这样服务就能安全启动。

11. 登录mysql

[root@localhost ~]# /software/mysql/bin/mysql -u root –p
# 输入临时密码。临时密码就是之前root@localhost:后面的内容

12. 修改mysql的登录密码

## password('123456') 括号中的123456就是修改后的的密码,不过建议密码不要这么简单
>mysql set password=password('123456');
## 对root用户进行授权,"%"表示在任何一台电脑上都可以登录;也可以指定某台机器可以远程登录;
>mysql grant all privileges on *.* to root@'%' identified by 'root';
## 刷新表
>mysql flush privileges;

操作到这里,MySQL的基本安装过程已经完成,此时mysql的登录名root, 登录密码123456

13. MySQL服务的启动和关闭

查看mysql服务的两种方式

[root@localhost ~]# ps -ef|grep mysql

[root@localhost ~]# netstat -nlp|grep mysql

启动mysql服务

[root@localhost ~]# service mysql start
如果服务在启动状态,直接重启服务用以下命令:
[root@localhost ~]# service mysql restart

关闭mysql服务

service mysql stop

其他MySQL相关的博文

MySQL5.7 常用用户操作

Centos7 firewall开放3306端口

linux安装MySQL5.7记录的更多相关文章

  1. linux 安装 mysql-5.6.26

    linux安装mysql-5.6.26 查看工具:winscp 下载地址 http://mirrors.sohu.com/mysql/MySQL-5.6/ 文件: mysql-5.6.26-linux ...

  2. Kali 2019(debian linux)安装MySql5.7.x

    Kali 2019(debian linux)安装MySql5.7.x MySQL安装 确认是否安装MySQL 终端输入:mysql 如出现Welcome to the MariaDB monitor ...

  3. Linux安装MySql5.7及配置(yum安装)

    Linux安装MySql5.7及配置(yum安装) [root@xld ~]# rpm -q centos-release centos-release-7-7.1908.0.el7.centos.x ...

  4. Linux安装mysql5.7版本

    1.linux安装mysql5.7顺序 ①mysqladmin –version 查看版本号 ②mysql5.7安装在linux中需要先初始化 Mysqld –initialize –user=mys ...

  5. linux安装MySQL5.7.13(二进制|源码)

    二进制和源码版本安装MySQL5.7.13,并简单介绍不同之处. 一.通用二进制部分 1.下载MySQL通用二进制软件包.[root@node1 ~]# wget http://120.52.72.2 ...

  6. Linux安装mysql5.6

    安装mysql5.6https://www.cnblogs.com/wangdaijun/p/6132632.html

  7. linux下安装MySQL5.6记录

    把之前装的mysql卸载了,准备重新用代码包装一遍,问了一下公司的DBA,他推荐给我mysql-5.6.16版本,说这个版本比较稳定. 按照网上的教程安装,结果就少文件,我还在找原因的时候,同事来找我 ...

  8. Linux安装mysql-5.7.17

    一.检查系统是否有自带安装MySQL 1.检查 [root@centos ~]# rpm -qa | grep -i mysql mysql-libs-5.1.71-1.el6.x86_64 2.卸载 ...

  9. Linux安装mysql5.7

    mysql安装排坑,不同版本可能会使用命令不同,这里需要谨慎查阅. 1. 按照需求在mysql官网下载对应linux版本. 2.创建mysql目录,将下载的安装包安装到目录下mkdir /usr/lo ...

随机推荐

  1. 浅谈react受控组件与非受控组件

    引言 最近在使用蚂蚁金服出品的一条基于react的ant-design UI组件时遇到一个问题,编辑页面时input输入框会展示保存前的数据,但是是用defaultValue就是不起作用,输入框始终为 ...

  2. 关于SpringBoot开发微信模板推送

    在这里演示一下微信的模板消息推送: 这里使用微信测试号 来演示: 先看下效果吧: 1.首先需要申请一个  微信测试号   https://mp.weixin.qq.com/wiki?t=resourc ...

  3. 代码审计| HDWiki 漏洞(一)

    i春秋核心白帽:yanzm 0×00 背景 最近拿到一个源码素材于是对这个源码进行分析发现了不少漏洞本篇先将一些漏洞进行分析下一篇再进行GetShell方法的分析期待和师傅们的交流. 0×01 漏洞分 ...

  4. [JavaScript] js实现保存文件到本地

    function fake_click(obj) { var ev = document.createEvent("MouseEvents"); ev.initMouseEvent ...

  5. Swift5 语言指南(二十二) 扩展

    扩展为现有的类,结构,枚举或协议类型添加新功能.这包括扩展您无法访问原始源代码的类型的能力(称为追溯建模).扩展类似于Objective-C中的类别.(与Objective-C类别不同,Swift扩展 ...

  6. SQL Server 用户'NT AUTHORITY\IUSR' 登录失败

    今天打开网站时,突然报这个错误,平时都好好的 Cannot open database "JMECC" requested by the login. The login fail ...

  7. linux防火墙(三)—— iptables语法之匹配条件

    一.iptables规则的匹配条件类型有三类 1.通用匹配:可直接使用,不依赖于其他条件或扩展,包括网络协议.IP地址.网络接口等条件 2.隐含匹配:要求以特定的协议匹配作为前提,包括端口.TCP标记 ...

  8. 在vue里面使用iVew框架

    iVew框架的文档   https://www.iviewui.com/docs/guide/install 这里使用的是 npm 来安装,在项目下执行下面命令npm install iview -- ...

  9. 【xsy1012】KSHKM的基因工程 AC自动机DP

    题目大意:给你$n$个串$p_i$,最后再给一个串$s$(字符集均为A,C,G,T四个字符中的一个).问你串$s$最少要更改多少个字符(更改后的字符也只能是ACGT),才能满足s中不包含$p_i$$( ...

  10. odoo开发笔记 -- context上下文

    字段级别 视图级别 窗口动作级别