zoukankan      html  css  js  c++  java
  • MySQL5.7安装

    1. 下载包
    wget   http://mirrors.sohu.com/mysql/MySQL-5.7/mysql-5.7.12-linux-glibc2.5-x86_64.tar.gz
     
    2. 解压
    tar  xxvf mysql-5.7.12-linux-glibc2.5-x86_64.tar.gz
    mv  mysql-5.7.12-linux-glibc2.5-x86_64  /usr/local/mysql
     
     
    3. 初始化
    useradd -M -s /sbin/nologin  mysql
    mkdir -p /data/mysql
    chown mysql /data/mysql
    cd /usr/local/mysql
    ./bin/mysqld  --initialize --user=mysql --datadir=/data/mysql
    注意,这一步最后一行会有一个提示
    [Note] A temporary password is generated for root@localhost: B*s1i(*,kXwg    llRhYDpFa6>8    //jHxl,!<3iQ
    最后面的字符串为root密码。
    ./bin/mysql_ssl_rsa_setup --datadir=/data/mysql
     
     
    4. 拷贝配置文件和启动脚本
    cp support-files/my-default.cnf  /etc/my.cnf 
    vim /etc/my.cnf //编辑或者修改
    basedir = /usr/local/mysql
    datadir = /data/mysql
    port = 3306
    socket = /tmp/mysql.sock
     
     
     
    cp support-files/mysql.server /etc/init.d/mysqld
    vi /etc/init.d/mysqld   //编辑或者修改
    basedir=/usr/local/mysql
    datadir=/data/mysql
     
     
    5. 启动服务
    /etc/init.d/mysqld start
     
    6. 设置root密码
    使用初始化密码登录
    /usr/local/mysql/bin/mysql -uroot -p'B*s1i(*,kXwg'  //进入后直接设置密码
    mysql>set password = password('mypass');   //一定要设置一下新密码
    退出来,再使用新的密码登录就可以了
     
    或者
    SET PASSWORD = PASSWORD('HycK@12345.CoM');
    ALTER USER 'root'@'localhost' PASSWORD EXPIRE NEVER;
    flush privileges;
     
     
     
     
     
     
    还有一种情况,就是不知道初始化密码
    vi /etc/my.cnf
    在[mysqld]下面增加一行
    skip-grant-tables
    重启  /etc/init.d/mysqld restart
     
    /usr/local/mysql/bin/mysql -uroot
    mysql> update user set authentication_string=password('123333') where user='root';
    退出来后,更改my.cnf,去掉刚加的 skip-grant-tables
    重启 /etc/init.d/mysqld restart
     
    此时就可以使用新的密码了。
     
     
     
    数据库时差 相差8小时
    官网原话:
    This variable was added in MySQL 5.7.2. Before 5.7.2, timestamps in log messages were written using the local system time zone by default, not UTC. If you want the previous log message time zone default, set log_timestamps=SYSTEM.
    在MySQL 5.7.2 新增了 log_timestamps 这个参数,该参数主要是控制 error log、genera log,等等记录日志的显示时间参数。
    在 5.7.2 之后改参数为默认 UTC 这样会导致日志中记录的时间比中国这边的慢,导致查看日志不方便。修改为 SYSTEM 就能解决问题
     
    SHOW GLOBAL VARIABLES LIKE 'log_timestamps';
    +----------------+--------+
    | Variable_name  | Value  |
    +----------------+--------+
    | log_timestamps | UTC    |
    +----------------+--------+
     
    SET GLOBAL log_timestamps = SYSTEM;
    Query OK, 0 rows affected (0.00 sec)
     
    SHOW GLOBAL VARIABLES LIKE 'log_timestamps';
    +----------------+--------+
    | Variable_name  | Value  |
    +----------------+--------+
    | log_timestamps | SYSTEM |
    +----------------+--------+
     
     
     
     
     
     
     
     
     
    增量备份
     
    mysqlbinlog e:/mysqldb/logbin.000001
     
    mysql 对于你的每一次操作 都会记录一次时间 同时 给你分配一个位置 (pos)
    换句话说 以后我们恢复 可以根据时间点来恢复 或者根据位置来恢复
     
    比如说 我们把一个表个drop 了 那么我们只要把表恢复到 drop之前就好了
     
    时间点恢复
        我们可以画个流程图
        logbin.000001
        insert ......   3       2013-07-23 17:57:00
        update .....   4    2013-07-23 17:59:00
         insert ......   100       2013-07-23 19:57:00
        drop  ...        101    2013-07-23 20:57:00
     
        恢复的话可以这么写
        mysqlbinlog  --stop-datatime="2013-07-23 20:50:00" e:/mysqldb/logbin.000001
        上面这句的意思是 一直恢复到 2013-07-23 20:50:00  停止
         mysqlbinlog  --start-datatime="2013-07-23 20:50:00" e:/mysqldb/logbin.000001
        上面这句的意思是 从2013-07-23 20:50:00  开始恢复
     
    按照位置来恢复
            mysqlbinlog  --stop-position="100" e:/mysqldb/logbin.000001  |
            上面这个语句意思是 恢复到100的位置
     
    真实性恢复
    按照位置恢复
    mysqlbinlog  --stop-position=4590 e:/mysqldb/logbin.000001  | mysql -uroot -p
    按照时间恢复
    mysqlbinlog  --stop-datetime="2013-07-24 18:17:19" e:/mysqldb/logbin.000001  | mysql -uroot -p
     
     
    可以控制从什么时候开始 到什么是结束
    mysqlbinlog --start-position=4 --stop-position=106 yueliangd
    ao_binglog.000001 > c:\test1.txt
  • 相关阅读:
    将台湾与山西的资源进行整合,搭建晋台两地商品营销平台
    范姜锋:致力于协助台湾青年创业,融入“一带一路”建设
    不甘于平凡,他靠借钱入行做电器生意,年销售额竟突破亿元?
    研究生接手父亲的事业,当起“猪妹”每天和猪打交道
    面对找不到工作的困难,小伙选择创业开酒吧,月收入竟达到了6万
    django 直接将数据分配给前台
    Centos7下安装与卸载Jdk1.8
    从“挖光缆”到“剪网线”|蚂蚁金服异地多活的微服务体系
    推进“互联网+政务服务” 加快新型智慧城市建设
    推进“互联网+政务服务” 加快新型智慧城市建设
  • 原文地址:https://www.cnblogs.com/caoyf1992/p/8243207.html
Copyright © 2011-2022 走看看