zoukankan      html  css  js  c++  java
  • linux安装mysql-5.7.22与数据自动备份

    mysql官网下载地址
    https://dev.mysql.com/downloads/mysql/5.7.html#downloads

    首先将mysql压缩包解压到/usr/local目录下
    tar -zxvf mysql-5.7.22-linux-glibc2.12-x86_64.tar
    将解压出来文件重命名为mysql
    mv mysql-5.7.22-linux-glibc2.12-x86_64 mysql

    添加用户与用户组
    groupadd mysql
    添加用户mysql 到用户组mysql
    useradd -g mysql mysql

    安装-进入mysql目录

    cd /usr/local/mysql
    新建data文件
    mkdir data
    改变目录拥有着mysql
    chown -R mysql:mysql ./
    在mysql目录下执行安装命令,执行输出完之后尾部会有mysql的初始密码
    ./bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql/ --datadir=/usr/local/mysql/data/

    将mysql/目录下除了data/目录的所有文件,改回root用户所有
    chown -R root .
    mysql用户只需作为mysql-5.7.20/data/目录下所有文件的所有者
    chown -R mysql data

    复制文件到系统目录
    cp support-files/mysql.server /etc/init.d/mysqld

    chmod 755 /etc/init.d/mysqld

    cp bin/my_print_defaults /usr/bin/

    修改启动脚本

    vi /etc/init.d/mysqld

    修改项如下:
    basedir=/usr/local/mysql
    datadir=/usr/local/mysql/data
    port=3306

    加入环境变量,编辑 /etc/profile,这样就无需定位到mysql目录执行了
    vi /etc/profile
    添加mysql路径,加入下面内容,按ESC-->:wq保存
    export PATH=$PATH:/usr/local/mysql/bin
    刷新立即生效
    source /etc/profile

    修改mysql配置项

    vi /etc/my.cnf

    配置如下:

    [mysqld]
    basedir = /usr/local/mysql/
    datadir = /usr/local/mysql/data/
    socket = /tmp/mysql.sock
    user = mysql
    tmpdir = /tmp
    symbolic-links=0
    lower_case_table_names=1 # add here 添加大小写不区分
    [mysqld_safe]

    log-error = /usr/local/mysql/data/error.log
    pid-file = /usr/local/mysql/data/mysql.pid

    启动mysql

    service mysql start
    service mysqld start

    修改mysql初始密码以及远程链接的用户权限问题
    mysql -u root -p

    ALTER USER USER() IDENTIFIED BY 'root';

    use mysql;

    update user set host = '%' where user ='root';

    flush privileges;

    远程连接mysql异常缓慢,

    解决方法,my.ini里面添加如下 

    [mysqld]
    skip-name-resolve
    skip-grant-tables

    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

    下面编写备份脚本

    #cd  /home/

    #vi back.sh

    编写如下

    #!/bin/bash
    #保留备份个数,会删除时间较早的.dump备份
    number=3
    #设置备份保存路径,替换成自己的备份保存路径
    backup_dir=/root/db_askdata/
    #日期格式
    dd=`date +%Y%m%d`
    #备份工具
    tool=mysqldump
    #数据库用户名
    username=root
    #数据库密码,由于密码可能包含特殊字符,需要用''转义
    password='intel@123'
    #数据库链接地址
    host='192.168.1.111'
    #数据库看装目录,如该文件执行生成的.dump文件没有数据则在tool前加上这一变量,反之则去掉
    mysql=/usr/local/mysql/bin/
    #将要备份的数据库名称,yourdb替换成自己要备份的数据库名,此脚本只支持备份一个数据库,多数据库mysqldump用法
    database_name=jeesite_ukefu
    #远程备份
    $mysql$tool -h$host -u $username -p$password --databases $database_name > $backup_dir/$database_name-$dd.dump
    #本地备份
    #$mysql$tool -u $username -p$password --databases $database_name > $backup_dir/$database_name-$dd.dump
    #写创建备份日志
    echo "create $backup_dir/$database_name-$dd.dump" >> $backup_dir/log.txt

    #查询本目录下所有备份文件
    #查询备份文件是按照备份文件的生成时间来计算的
    FileNum=$(ls -l $backup_dir/*.dump | grep ^- | wc -l)
    echo "Number of backup files:"$FileNum >> $backup_dir/log.txt
    while(( $FileNum > $number ))
    do
    #取最旧的文件,*.*可以改为指定文件类型
    OldFile=$(ls -rt $backup_dir/*.dump | head -1)
    echo "Delete File:"$backup_dir'/'$OldFile >> $backup_dir/log.txt
    rm -f $OldFile
    let "FileNum--"
    done

     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

    利用crond实现自动备份

    下面的安装方法

    #yum install vixie-cron
    #yum install crontabs
    主要命令操作

    service crond start //启动服务
    service crond stop //关闭服务
    service crond restart //重启服务
    service crond reload //重新载入配置
    service crond status //查看crontab服务状态

    配置文件配置

    crontab -e

    配置实例

    添加如下

    01 00 * * * /home/back.sh
    每天00点01分执行back.sh

  • 相关阅读:
    面向对象(静态)
    面向对象 三大特性
    MySQL数据库表分区功能详解
    zabbix 库表介绍
    数据库分库分表思路
    Mysql之binlog日志说明及利用binlog日志恢复数据操作记录
    zabbix 监控 tomcat
    zabbix 监控项报"Value "(No info could be read for "-p": geteuid()=1002 but you should be root"
    Linux中Swap与Memory内存简单介绍
    mysql常用命令杂记
  • 原文地址:https://www.cnblogs.com/luckyminghao/p/9855691.html
Copyright © 2011-2022 走看看