介绍如何在Linux下安装MySQL 5.7.18

1、下载MySQL:官网https://www.mysql.com/,点击Downlosas,翻到网页底部,下载社区版,一路点下去,选择通用Linux,下载64位那个,注意检查MD5
值。

2、安装关键步骤,直接贴出命令

[cpp] view plain copy 在CODE上查看代码片派生到我的代码片[root@CentOS MySQL]# tar -xzvf mysql-5.7.17-linux-glibc2.5-x86_64.tar.gz -C /usr/local [root@CentOS MySQL]# cd /usr/local [root@CentOS local]# mv mysql-5.7.17-linux-glibc2.5-x86_64 mysql [root@CentOS local]# cd mysql [root@CentOS mysql]# mkdir data [root@CentOS mysql]# groupadd mysql [root@CentOS mysql]# useradd -r -g mysql -s/bin/false mysql [root@CentOS mysql]# chown -R mysql:mysql ./ [root@CentOS mysql]# bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data 2017-02-23T07:43:03.404885Z 0 [Warning] TIMESTAMP with implicit DEFAULT value is deprecated. Please use --explicit_defaults_for_timestamp server option (see documentation for more details). 2017-02-  23T07:43:04.442174Z 0 [Warning] InnoDB: New log files created, LSN=45790 2017-02-23T07:43:04.588507Z 0 [Warning] InnoDB: Creating foreign key constraint system tables. 2017-02-23T07:43:04.646721Z 0 [Warning] No  existing UUID has been found, so we assume that this is the first time that this server has been started. Generating a new UUID: b5c8e226-f99b-11e6-beb5-b7c1a1e39029. 2017-02-23T07:43:04.671492Z 0 [Warning]  Gtid table is not ready to be used. Table 'mysql.gtid_executed' cannot be opened. 2017-02-23T07:43:04.672338Z 1 [Note] A temporary password is generated for root@localhost: I%e=s+lfx9ko [root@CentOS mysql]#  bin/mysql_ssl_rsa_setup --datadir=/usr/local/mysql/data Generating a 2048 bit RSA private key .....................................+++ ..............................+++ writing new private key to 'ca-key.pem' ----- Generating a 2048 bit RSA private key .........................................+++ .........................+++ writing new private key to 'server-key.pem' ----- Generating a 2048 bit RSA private key ..................................................+++ ...................................................................................................................................................................................................+++ writing  new private key to 'client-key.pem' ----- [root@CentOS mysql]# cd support-files [root@CentOS support-files]# cp my-default.cnf /etc/my.cnf [root@CentOS support-files]# gedit /etc/my.cnf [root@CentOS support-files]# cp mysql.server /etc/init.d/mysqld [root@CentOS support-files]# service mysqld start Starting MySQL.Logging to '/usr/local/mysql/data/CentOS.cn.err'. . SUCCESS! [root@CentOS support-files]# ps aux |grep mysql root  18279 0.0 0.0 11764 1576 pts/0 S 17:34 0:00 /bin/sh  /usr/local/mysql/bin/mysqld_safe --datadir=/usr/local/mysql/data --pid-file=/usr/local/mysql/data/CentOS.cn.pid mysql  18449 1.9 9.5 1182688 177940 pts/0 Sl 17:34 0:00 /usr/local/mysql/bin/mysqld --  basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --plugin-dir=/usr/local/mysql/lib/plugin --user=mysql --log-error=/usr/local/mysql/data/CentOS.cn.err --pid-file=/usr/local/mysql/data/CentOS.cn.pid  --socket=/tmp/mysql.sock --port=3306  [root@CentOS support-files]# 

把压缩包解压到/usr/local目录下,就是把MySQL安装在该目录下。

切换到/usr/local,把刚才解压后的文件夹重命名为mysql。

在mysql目录下创建data文件夹,用来存储MySQL的数据。

增加用户组mysql。

增加用户名mysql属于mysql组。

修改mysql目录的拥有者和组。

初始化MySQL,分两步:

第一步,bin/mysqld 注意后面给的参数,之一部会产生一个临时密码,保存,后面登录数据库要用到;

第二步,bin/mysql_ssl_rsa_setup,看起来像是对数据库安全的处理,注意后面给的参数。

切换到support-files目录。

把my-default.cnf拷贝到 /etc/my.cnf,注意CentOS7自带了一个my.cnf文件,覆盖掉。

编辑该文件,只对18,19,20,22行修改,如下

把mysql.server文件拷贝到/etc/init.d/mysqld下,主要负责MySQL的开机启动。

启动mysqld进程。

查询mysql进程。有两个: /mysql/bin/mysqld_safe、/mysql/bin/mysqld

3、后续配置:

登录mysql,修改临时密码:/usr/local/mysql/bin/mysql -u root -p 回车输入初始化时生成的临时密码,修改密码:

set password for 'root'@localhost=password('xxxxxx');

每次登录mysql客户端嫌输绝对路径麻烦,就建一个软连接:ln -s /usr/local/mysql/bin/mysql /usr/bin/mysql,这样也省去了配PATH路径的麻烦。

mysqld的开机启动,使用chkconfig命令

chkconfig --add mysqld #增加mysqld服务chkconfig --list    #列出所有的系统服务
chkconfig --level 35 mysqld on #设定mysqld在等级3和5为开机运行服务

更多相关文章

  1. ES6 变量声明,箭头函数,数组方法,解构赋值,JSON,类与继承,模块化练习
  2. 浅谈Java中Collections.sort对List排序的两种方法
  3. Python list sort方法的具体使用
  4. python list.sort()根据多个关键字排序的方法实现
  5. android上一些方法的区别和用法的注意事项
  6. android实现字体闪烁动画的方法
  7. Android中dispatchDraw分析
  8. Android四大基本组件介绍与生命周期
  9. Android(安卓)MediaPlayer 常用方法介绍

随机推荐

  1. 感动,感谢,感恩 PMP 考后感
  2. 对SATA硬盘的理解
  3. MongoDB快速入门,掌握这些刚刚好!
  4. 【JavaWeb基础】图书管理系统总结(修订版
  5. 近况
  6. 我常用的IDEA插件大公开,个个是精品!
  7. Kubernetes 原生 CI/CD 构建框架 Argo 详
  8. 5A的成绩通过PMP考试,意外的惊喜
  9. 《大型网站系统与Java中间件》读书笔记 (
  10. 什么是jQuery?