• linux安装MySQL5.7记录


    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端口

  • 相关阅读:
    cdn与http缓存
    EntityFramework、Dapper vs 草根框架性能
    docker10件事
    TCP的阻塞和重传
    ngCookies模块
    Net Core- 配置组件
    获取synchronized锁中的阻塞队列中的线程是非公平的
    Java线程并发中常见的锁--自旋锁 偏向锁
    byte为什么要与上0xff(转)
    Tair是一个高性能,分布式,可扩展,高可靠的key/value结构存储系统(转)
  • 原文地址:https://www.cnblogs.com/huizhipeng/p/10127061.html
Copyright © 2020-2023  润新知