mysqldump、xtrabackup、备份、恢复、nginx、root和alias的区别、域名、
备份
mysqldump
- 
锁表 
- 
备份特别慢,适用于数据量较小 
- 
不可以做增量备份 
- 
单线程 
  -A, --all-databases 所有的库
  -B 指定备份的库
  —F 备份前刷新日志
  --flush-privileges 刷新授权表
  -p 密码
  -u 用户
  -P 端口
  触发器
  存储过程和存储函数
  ## 备份
  mysqldump -uroot -S /mydata/mysql/mysql.sock -A -p > mysql.sql
  ## 恢复一
  直接在数据库里面source mysql.sql文件
  ## 恢复二
  mysql -uroot -p < mysql.sql
xtrabackup
- 
多进程 
- 
支持增量备份 
- 
锁行 
 安装
 yum install https://repo.percona.com/yum/percona-release-latest.noarch.rpm # 安装yum仓库
 yum install -y percona-xtrabackup-24
 --target-dir=name # 指定备份生成的目录
 --backup 备份
 --prepare 准备
 --databases=name    filtering by list of databases.
 --databases-file=name 配置文件
创建一个用户
 mysql> create user 'backup'@'localhost' identified by 'backup';
 Query OK, 0 rows affected (0.00 sec)
 
 mysql> grant reload,lock tables,process,replication client on *.* to 'backup'@'localhost';
 Query OK, 0 rows affected (0.00 sec)
 
 mysql> flush privileges;
 Query OK, 0 rows affected (0.00 sec)
 
备份
 xtrabackup --backup --target-dir=/mydata/backup/base -ubackup -pbackup --socket=/mydata/mysql/mysql.sock
 ### 看得如下信息,代表成功
 xtrabackup: Transaction log of lsn (5480853) to (5480862) was copied.
 190902 09:25:09 completed OK!
恢复
准备文件
 xtrabackup --prepare --target-dir=/mydata/backup/base
 InnoDB: Starting shutdown...
 InnoDB: Shutdown completed; log sequence number 5482536
 190902 09:28:12 completed OK!
恢复文件
 cd /mydata/backup/base
 cp -rf hello /mydata/mysql/
 chown mysql.mysql /mydata/mysql/hello/ -R
恢复全部文件
 xtrabackup --copy-back --target-dir=/mydata/backup/base
 chown mysql.mysql * -R
增量备份
 xtrabackup --backup --target-dir=/mydata/backup/t1 --incremental-basedir=/mydata/backup/base -uroot -p --socket=/mydata/mysql/mysql.sock
 --incremental-dir 全备的路径
 xtrabackup --backup --target-dir=/mydata/backup/t2 --incremental-basedir=/mydata/backup/t1 -uroot -p --socket=/mydata/mysql/mysql.sock
 --incremental-basedir应该是上一次的增量备份目录
 xtrabackup --prepare --apply-log-only --target-dir=/mydata/backup/base
恢复(只能全部删除以后再恢复)
 xtrabackup --prepare --apply-log-only --target-dir=/mydata/backup/base
 xtrabackup --prepare --apply-log-only --target-dir=/mydata/backup/base --incremental-dir=/mydata/backup/t1
 xtrabackup --prepare --apply-log-only --target-dir=/mydata/backup/base --incremental-dir=/mydata/backup/t2
 xtrabackup --copy-back --target-dir=/mydata/backup/base
 chown mysql.mysql * -R
 systemctl restart mysqld
nginx
web服务 apache iis
django web框架
lvs 负载均衡 章文嵩博士
vue 尤雨溪
Tengine
F5 硬件负载
A10
安装
 wget http://nginx.org/download/nginx-1.16.1.tar.gz
 tar xf nginx-1.16.1.tar.gz 
 cd nginx-1.16.1
 yum install gcc zlib2-devel pcre-devel openssl-devel
 指定安装路径并指定http和状态./configure --prefix=/opt/nginx --with-http_ssl_module --with-http_stub_status_module
 yum install -y gcc
 yum install -y pcre
 yum install -y pcre-devel
 yum install -y openssl-devel
 make && make install
 make ; make install
目录结构
 [root@localhost nginx]#ls
 conf  html  logs  sbin
 conf 配置文件
 html 存放静态文件 index.html 是默认的欢迎页面
 logs 日志目录
 sbin 二进制文件
 启动以后会生成一个主进程,根据配置文件的选项来生成子进程(工作进程),主进程不负责处理用户的请求,用来转发用户的请求,真正负责处理用户请求的是子进程
命令格式
 ./sbin/nginx -h
 nginx version: nginx/1.16.1
 Usage: nginx [-?hvVtTq] [-s signal] [-c filename] [-p prefix] [-g directives]
 
 Options:
   -?,-h         : this help
   -v            : show version and exit 显示版本号
   -V            : show version and configure options then exit 显示版本+编译时选项
   -t            : test configuration and exit  测试配置文件
   -T            : test configuration, dump it and exit
   -q            : suppress non-error messages during configuration testing
   -s signal     : send signal to a master process: stop, quit, reopen, reload
   -p prefix     : set prefix path (default: /opt/nginx/)
   -c filename   : set configuration file (default: conf/nginx.conf)
   -g directives : set global directives out of configuration file
配置文件
 #user  nobody;    使用哪个用户来启动子进程
 worker_processes  1; #工作进程的个数,配置成cpu的核心数-1或者-2
 # cpu亲缘性绑定,让nginx的子进程工作在哪个核心上
 
 #error_log  logs/error.log;
 #error_log  logs/error.log  notice;
 #error_log  logs/error.log  info;
 
 #pid        logs/nginx.pid;
 
 
 events {
     #use [epoll|select|poll];
     worker_connections  102400; # 每一个子进程可以处理的连接数
 }
 
 
 http {
     include       mime.types; #导入
     default_type  application/octet-stream; # 默认的请求方式
     # 定义日志格式
     #log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
     #                  '$status $body_bytes_sent "$http_referer" '
     #                  '"$http_user_agent" "$http_x_forwarded_for"';
     #定义日志并定义日志格式
     #access_log  logs/access.log  main;
 
     sendfile        on;
     #tcp_nopush     on;
 
     #keepalive_timeout  0;
     keepalive_timeout  65; # 保持长连接的超时时间
 
     #gzip  on;
 
     server {
         listen       80; #监听端口
         server_name  localhost; 
 
         #charset koi8-r;
 
         #access_log  logs/host.access.log  main;
 
         location / {
             root   html;  # 指定静态文件地址
             index  index.html index.htm; # 指定默认的index页面
         }
         # 错误页面 找不到页面
         #error_page  404              /404.html;
 
         # redirect server error pages to the static page /50x.html
         #
         # 错误页面 服务端错误
         error_page   500 502 503 504  /50x.html;
         location = /50x.html {
             root   html;
         }
 
         # proxy the PHP scripts to Apache listening on 127.0.0.1:80
         #
         #location ~ \.php$ {
         #    proxy_pass   http://127.0.0.1;
         #}
 
         # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
         #
         #location ~ \.php$ {
         #    root           html;
         #    fastcgi_pass   127.0.0.1:9000;
         #    fastcgi_index  index.php;
         #    fastcgi_param  SCRIPT_FILENAME  /scripts$fastcgi_script_name;
         #    include        fastcgi_params;
         #}
 
         # deny access to .htaccess files, if Apache's document root
         # concurs with nginx's one
         #
         #location ~ /\.ht {
         #    deny  all;
         #}
     }
 
 
     # another virtual host using mix of IP-, name-, and port-based configuration
     #
     #server {
     #    listen       8000;
     #    listen       somename:8080;
     #    server_name  somename  alias  another.alias;
 
     #    location / {
     #        root   html;
     #        index  index.html index.htm;
     #    }
     #}
 
 
     # HTTPS server
     #
     #server {
     #    listen       443 ssl;
     #    server_name  localhost;
 
     #    ssl_certificate      cert.pem;
     #    ssl_certificate_key  cert.key;
 
     #    ssl_session_cache    shared:SSL:1m;
     #    ssl_session_timeout  5m;
 
     #    ssl_ciphers  HIGH:!aNULL:!MD5;
     #    ssl_prefer_server_ciphers  on;
 
     #    location / {
     #        root   html;
     #        index  index.html index.htm;
     #    }
     #}
 
 }
 
404页面
 error_page  404              /404.html;
root和alias的区别
  location /img {
     root /data/img;
  }
 root /data/img 里面必须有/img
  location /img {
     alias /data/img;
  }
  alias /data/img 里面不需要有 /img
域名
 server_name ms.s22.com
多域名访问
   server  {
         listen 80;
         server_name www.taobao.com taobao.com;
         location / {
         root /data/taobao;
         index index.html;
         }
 
 }
    server  {
         listen 80;
         server_name www.jd.com jd.com;
         location / {
         root /data/jd;
         index index.html;
         }
         }
 listen 80 default_server;
 
                    
                     
                    
                 
                    
                
 
                
            
         
         浙公网安备 33010602011771号
浙公网安备 33010602011771号