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. 最值得拥有的免费Bootstrap后台管理模板

    在PHP开发项目中,后台管理因为面向群体相对比较固定,大部分以实现业务逻辑和功能.使用Bootstrap后台模板可以让后端开发很轻松的就展现给客户一个响应式的后台,节约前端开发的时间.下面PHP程序员 ...

  2. 【CS】笔试常见题目

    网络 IP地址分类 常见网络协议 HTTP状态码 算法 排序问题总结 git git和svn的区别 git常用命令 git暂存区,工作区等 一.网络 1. IP地址分类: IP网络使用32位地址,以点 ...

  3. 文件上传下载、socketserver(并发)、解读socketserver源码

    1.文件上传/下载 学习了socket套接字,我们现在可以写一个文件上传/下载的程序,如下示例: 分析上边代码,我们发现,client发送上传文件相关信息的字典序列化之后,server又给client ...

  4. main函数中如何等待协程运行完毕

    使用channel同步 package main import ( "fmt" ) func printNumber(num int, c chan struct{}) { fmt ...

  5. 域名直接访问应用程序-不加端口号&不加路径名

    当访问域名的时候,端口默认指定的是80: 而80端口在Linux系统下,1024之前的端口是只有root用户才能使用的, 因此将,系统层面将端口80 映射到8080, iptables -t nat ...

  6. Python相关在线文档手册地址

    Python相关: 五星推荐:http://python.usyiyi.cn/ Python 2.7官方中文文档:http://doc.iplaypy.com/python2/  英文:    htt ...

  7. Matlab中常见的神经网络训练函数和学习函数

    一.训练函数 1.traingd Name:Gradient descent backpropagation (梯度下降反向传播算法 ) Description:triangd is a networ ...

  8. 剑指offer四之重建二叉树

    一.题目: 输入某二叉树的前序遍历和中序遍历的结果,请重建出该二叉树.假设输入的前序遍历和中序遍历的结果中都不含重复的数字.例如输入前序遍历序列{1,2,4,7,3,5,6,8}和中序遍历序列{4,7 ...

  9. C# 多线程六之Task(任务)三之任务工厂

    1.知识回顾,简要概述 前面两篇关于Task的随笔,C# 多线程五之Task(任务)一 和 C# 多线程六之Task(任务)二,介绍了关于Task的一些基本的用法,以及一些使用的要点,如果都看懂了,本 ...

  10. i=i+1,i+=1,i++哪个执行效率最高?为什么?

    (1)i=i+1最低,它的执行过程如下:读取右i的地址i+1读取左i的地址将右值传给左边的i(编译器并不认为左右i的地址相同)(2)i+=1其次,它的执行过程如下:读取左x的地址i+1将得到的值传给i ...