今天一个新的项目终于能够重新安装mysql了,分享下步骤:

 1.下载地址:http://dev.mysql.com/downloads/mysql/  (选择Linux - Generic版本的Linux - Generic (glibc 2.5)  (x86, 64-bit), Compressed

 2.直接将下载后的解压缩到/usr/local目录下

      tar zxvf mysql-5.7.15-linux-glibc2.5-x86_64.tar.gz  -C /usr/local

      mv mysql-5.7.15-linux-glibc2.5-x86_64 mysql

     mkdir /var/lib/mysql

3.生成并修改mysql配置文件,cp support-files/my-default.cnf  /etc/my.cnf

      vim /etc/my.cnf:

      [mysqld]

      datadir=/usr/local/mysql/data

      socket=/tmp/mysql.sock

      character-set-server=utf8

      collation-server=utf8_general_ci

      [mysqld_safe]

      #log-error=/var/log/mariadb/mariadb.log

      #pid-file=/var/run/mariadb/mariadb.pid

      log-error=/var/log/mysql/mysql.log

      pid-file=/var/run/mysql/mysql.pid

      # include all files from the config directory

       !includedir /etc/my.cnf.d

 4.由于解压后的mysql事已经编译过的了,所以不需要进行--configure ,make ,make install等步骤了,直接进入到/usr/local/mysql目录下面进行下列指令操作(可参考mysql官网:http://dev.mysql.com/doc/refman/5.7/en/binary-installation.html): 

      groupadd mysql

      useradd -r -g mysql -s /bin/false mysql

      mkdir data

      mkdir mysql-files

      chown -R mysql .

      chgrp -R mysql .

      bin/mysqld --initialize --user=mysql(记录好在这里生成的password,这便是mysql root用户的初始密码)

      bin/mysql_ssl_rsa_setup

      chown -R root .

      chown -R mysql data mysql-files

      bin/mysqld_safe --user=mysql &

    注:在执行bin/mysqld --initalize --user=mysql的时候可能会出现如下bug:

      bin/mysqld: error while loading shared libraries: libaio.so.1: cannot open shared object file: No such file or directory

      这是因为少了libaio这个依赖包,只需yum -y install libaio即可      

   5.建立软连接 ln -s /usr/local/mysql/bin/mysql  /usr/local/bin

      mysql -uroot -p (输入之前记录的密码)

      成功登录到mysql界面,但是发现操作任何命令始终提示You must reset your password using ALTER USER statement before executing this statement

      解决方法如下:  

         step 1: set password = password('your new password');

         step 2: alter user 'root'@'localhost' password expire never ;

      step 3: flush privileges;

      退出后重新登录mysql即可,密码为你新设置的密码

    6.授权用户(如果没有该用户则会默认创建用户和密码)

      create database  basename

      grant all privileges on basename.* to "usertest"@'%' identified by '123456'

      这样就创建了用户名为usertest,密码为123456的用户,并且它可以在任何ip地址上登录(设置的是%)

      7.设置启动(/usr/lib/systemd/system,适用于centos7)

        (1)vim nginx.service

[Unit]
Description=nginx - high performance web server
After=network.target remote-fs.target nss-lookup.target [Service]
Type=forking
ExecStart=/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf
ExecReload=/usr/local/nginx/sbin/nginx -s reload
ExecStop=/usr/local/nginx/sbin/nginx -s stop [Install]
WantedBy=multi-user.target

   启动,关闭,重启命令:systemctl start nginx  systemctl stop nginx systemctl restart nginx 

       (2)vim mysql.service

[Unit]
Description=mysql
After=network.target remote-fs.target nss-lookup.target [Service]
Type=forking
ExecStart=/usr/local/mysql/support-files/mysql.server start
ExecReload=/usr/local/mysql/support-files/mysql.server restart
ExecStop=/usr/local/mysql/support-files/mysql.server stop
#PrivateTmp=true [Install]
WantedBy=multi-user.target

  启动,关闭,重启命令:systemctl start mysql systemctl stop mysql systemctl restart mysql      

    (3)vim php-fpm.service

[Unit]
Description=php
After=network.target remote-fs.target nss-lookup.target [Service]
Type=forking
ExecStart=/usr/local/php/sbin/php-fpm
ExecReload=/usr/local/php/sbin/php-fpm restart
ExecStop=/usr/local/php/sbin/php-fpm stop [Install]
WantedBy=multi-user.target

  启动,关闭,重启命令:systemctl start php-fpm, systemctl stop php-fpm, systemctl restart php-fpm

    (4)vim redis.service

[Unit]
Description=Redis
After=network.target remote-fs.target nss-lookup.target [Service]
Type=forking
ExecStart=/usr/local/bin/redis-server /etc/redis/6379.conf
ExecStop=kill -INT `cat /tmp/redis.pid`
User=www
Group=www [Install]
WantedBy=multi-user.target

  启动,关闭,重启命令:systemctl start redis, systemctl stop php-fpm, systemctl restart redis

  编辑了或新增了service文件后需要systemctl daemon-reload一下service才会起作用

centOS 部署服务器(三)的更多相关文章

  1. 为什么使用centos部署服务器

    这个是实验室同学面试的时候,面试官问的一个问题? 为什么选择centos系统,为什么centos系统用的比较多呢? 首先我们说下redhat红帽公司,它是全球最大的linux服务提供商,它的服务是最好 ...

  2. centOS 部署服务器(一)

    接下来我所写的博客仅仅是为了记录我的学习过程,与其他无关. 由于公司换用了亚马逊服务器,用的是它的RDS数据库,所以就没有像以前的项目部署的时候使用mysql,不过要下载安装mysql-proxy,字 ...

  3. centOS 部署服务器(二)

    (1)安装nginx 1.下载地址: http://nginx.org/en/download.html ,并解压到目录下 2.安装依赖包 yum -y install pcre*  yum -y i ...

  4. Tigase XMPP Server在CentOS部署和配置

    Tigase XMPP Server在CentOS部署与配置 作者:chszs,转载需注明.博客主页:http://blog.csdn.net/chszs 以下讲述Tigase XMPP Server ...

  5. Centos部署使用Jexus承载asp.net core2 web应用

    一,首先安装本地开发项目用的的 core对应版本运行时: https://www.microsoft.com/net/download/linux-package-manager/centos/run ...

  6. CentOS Linux服务器安全设置

    转自:http://www.osyunwei.com/archives/754.html 引言: 我们必须明白:最小的权限+最少的服务=最大的安全 所以,无论是配置任何服务器,我们都必须把不用的服务关 ...

  7. 【Linux】Centos部署MySQL

    将CentOS部署MySQL需要本地配置环境.本地编译MySQL,耗时较长的情况,优化为编译成型MySQL并打包,推送并按配置部署. 首先需要在一台机器配置好环境,搭个YUM源,并将所需要的包取出备用 ...

  8. 使用saltstack批量部署服务器运行环境事例——批量部署nagios客户端

    之前关于搭建web服务器集群实验的这篇文章http://www.cnblogs.com/cjyfff/p/3553579.html中,关于如何用saltstack批量部署服务器这一点当时没有记录到文章 ...

  9. SpringBoot入门教程(二)CentOS部署SpringBoot项目从0到1

    在之前的博文<详解intellij idea搭建SpringBoot>介绍了idea搭建SpringBoot的详细过程, 并在<CentOS安装Tomcat>中介绍了Tomca ...

随机推荐

  1. querySelectorAll和getElementsBy 系列比较

    querySelectorAll 相比下面这些方法有什么区别? (1)getElementsByTagName (2)getElementsByClassName (3)getElementsByNa ...

  2. iOS 两个tableview的 瀑布流

    iOS 两个tableview的 瀑布流1. [代码]Objective-C     ////  DocViewController.m//  getrightbutton////  Created ...

  3. tflearn数据预处理

    #I just added a function for custom data preprocessing, you can use it as: minmax_scaler = sklearn.p ...

  4. hdu-5744 Keep On Movin(思维)

    题目链接: Keep On Movin Time Limit: 4000/2000 MS (Java/Others)     Memory Limit: 65536/65536 K (Java/Oth ...

  5. 装饰器 decorator

    装饰器 def document_it(func): def new_function(*args, **kwargs): print('Running function:', func.__name ...

  6. 最短路——Dijkstra和Floyd

    Problem Description 在每年的校赛里,所有进入决赛的同学都会获得一件很漂亮的t-shirt.但是每当我们的工作人员把上百件的衣服从商店运回到赛场的时候,却是非常累的!所以现在他们想要 ...

  7. Tyvj1052(树形DP)

    P1052 没有上司的舞会 时间: 1000ms / 空间: 131072KiB / Java类名: Main 描述 Ural大学有N个职员,编号为1~N.他们有从属关系,也就是说他们的关系就像一棵以 ...

  8. 使用Rest api管理Ceph网关

    背景 开发基于Ceph RadosGW的微服务,需要实现调用方可以通过rest api就能创建用户,获取用户信息等功能. 实现 Ceph的RadosGW自身就有该功能,这些创建用户.获取用户信息.获取 ...

  9. Android开发--环境搭建和调试技巧

    一:环境搭建 (1)我使用的环境是:window8+Java SDK+Eclipse+Android SDK+ADT 安装步骤:Java SDK-->Eclipse--->ADT---&g ...

  10. python序列化之pickle,json,shelve

    模块 支持方法 说明 json dumps/dump loads/load 只能处理基本数据类型: 用于多种语言间的数据传输: pickle dumps/dump loads/load 支持pytho ...