centos7 安装 mysql5.7 备忘以及开启远程登陆

1. 下载安装文件(.tar.gz) https://dev.mysql.com/downloads/mysql/

2. 解压缩(命令tar zvxf)到/usr/local/下面,mysql的主目录命名为mysql

[root@localhost local]# cd /usr/local/soft/
[root@localhost soft]# tar zvxf mysql-5.7.10-linux-glibc2.5-i686.tar.gz -C /usr/local
[root@localhost soft]# cd ..
[root@localhost local]# mv mysql-5.7.10-linux-glibc2.5-i686/ mysql

3. 在mysql下面创建data数据库文件目录

[root@localhost local]# mkdir mysql/data

4. 创建mysql的用户组和用户,并对mysql目录设置用户组和用户

[root@localhost local]# groupadd mysql
[root@localhost local]# useradd mysql -g mysql
[root@localhost local]# cd mysql
[root@localhost mysql]# pwd
/usr/local/mysql
[root@localhost mysql]# chown -R mysql .
[root@localhost mysql]# chgrp -R mysql .

5. 初始化mysql并启动mysql服务,注意修改my.cnf文件的相关配置,可以使用find / -name *.cnf来定位文件位置

[root@localhost mysql]# cd /usr/local/mysql/bin
[root@localhost bin]# yum install libaio
[root@localhost bin]# ./mysql_install_db --user=mysql --basedir=/usr/local/mysql/ --datadir=/usr/local/mysql/data

启动mysql

[root@localhost bin]# cd /usr/local/mysql/support-files
[root@localhost support-files]# ./mysql.server start
Starting MySQL. SUCCESS!

关闭mysql

[root@localhost support-files]# ./mysql.server stop

6. 登陆,登陆前找到root账户临时密码 find / -name *.mysql_secret

[root@localhost ~]# cd /usr/local/mysql/bin
[root@localhost bin]# ./mysql -uroot -p临时密码

7. 修改临时密码

ALTER USER 'root'@'localhost' IDENTIFIED BY 'root账户新密码';

8. 创建远程登陆账户

CREATE USER "远程登陆账户"@"%" IDENTIFIED BY "远程登陆密码";

9. 为远程登陆账户设置权限

GRANT ALL ON *.* TO '远程登陆账户'@'%';
flush privileges; #刷新系统权限表

10. 设置防火墙,开放相应端口(默认3306)

如果是云主机,需要在主机管理后台操作。例如阿里云,需要修改安全组规则,打开入方向的相应端口

开放端口
永久的开放需要的端口

sudo firewall-cmd --zone=public --add-port=3306/tcp --permanent
sudo firewall-cmd --reload
之后检查新的防火墙规则
firewall-cmd --list-all

linux下解压命令大全

.tar

解包:tar xvf FileName.tar
打包:tar cvf FileName.tar DirName
(注:tar是打包,不是压缩!)


.gz

解压1:gunzip FileName.gz
解压2:gzip -d FileName.gz
压缩:gzip FileName


.tar.gz 和 .tgz

解压:tar zxvf FileName.tar.gz
压缩:tar zcvf FileName.tar.gz DirName


.bz2

解压1:bzip2 -d FileName.bz2
解压2:bunzip2 FileName.bz2
压缩: bzip2 -z FileName


.tar.bz2

解压:tar jxvf FileName.tar.bz2
压缩:tar jcvf FileName.tar.bz2 DirName


.bz

解压1:bzip2 -d FileName.bz
解压2:bunzip2 FileName.bz
压缩:未知


.tar.bz

解压:tar jxvf FileName.tar.bz
压缩:未知


.Z

解压:uncompress FileName.Z
压缩:compress FileName
.tar.Z

解压:tar Zxvf FileName.tar.Z
压缩:tar Zcvf FileName.tar.Z DirName


.zip

解压:unzip FileName.zip
压缩:zip FileName.zip DirName


.rar

解压:rar x FileName.rar
压缩:rar a FileName.rar DirName


.lha

解压:lha -e FileName.lha
压缩:lha -a FileName.lha FileName


.rpm

解包:rpm2cpio FileName.rpm | cpio -div


.deb

解包:ar p FileName.deb data.tar.gz | tar zxf -


.tar .tgz .tar.gz .tar.Z .tar.bz .tar.bz2 .zip .cpio .rpm .deb .slp .arj .rar .ace .lha .lzh .lzx .lzs .arc .sda .sfx .lnx .zoo .cab .kar .cpt .pit .sit .sea

解压:sEx x FileName.*
压缩:sEx a FileName.* FileName

sEx只是调用相关程序,本身并无压缩、解压功能,请注意!


gzip 命令

减少文件大小有两个明显的好处,一是可以减少存储空间,二是通过网络传输文件时,可以减少传输的时间。gzip 是在 Linux 系统中经常使用的一个对文件进行压缩和解压缩的命令,既方便又好用。

语法:gzip [选项] 压缩(解压缩)的文件名该命令的各选项含义如下:

-c 将输出写到标准输出上,并保留原有文件。-d 将压缩文件解压。-l 对每个压缩文件,显示下列字段: 压缩文件的大小;未压缩文件的大小;压缩比;未压缩文件的名字-r 递归式地查找指定目录并压缩其中的所有文件或者是解压缩。-t 测试,检查压缩文件是否完整。-v 对每一个压缩和解压的文件,显示文件名和压缩比。-num 用指定的数字 num 调整压缩的速度,-1 或 --fast 表示最快压缩方法(低压缩比),-9 或--best表示最慢压缩方法(高压缩比)。系统缺省值为 6。指令实例:

gzip % 把当前目录下的每个文件压缩成 .gz 文件。gzip -dv % 把当前目录下每个压缩的文件解压,并列出详细的信息。gzip -l *% 详细显示例1中每个压缩的文件的信息,并不解压。gzip usr.tar% 压缩 tar 备份文件 usr.tar,此时压缩文件的扩展名为.tar.gz。

转自http://www.cnblogs.com/eoiioe/archive/2008/09/20/1294681.html

ss chacha20

为什么需要 chacha20

之前主流的 SS 有两种加密算法 :RC4-MD5 和 aes-256-cfb.

aes-256-cfb 是各种一键包默认的加密方法 , 但是由于路由器和手机性能的问题 , 这种算法还是多少会影响到一些速度的 ?RC4-MD5 主要是加密太简单了 , 在 GFW 面前加密不加密已经没有什么区别了 … 所以我们需要密码强度比 RC4-MD5 高 , 但是速度比 aes-256-cfb 快的加密算法 , 那就是 chacha20 了 . 可以说是目前性价比比较高的加密算法 .

不过特别需要注意的是 ,IOS 越狱版的 ss 和一些老的路由系统自带的 ss 版本 , 可能没有这个加密方法 . 请在修改你服务器端加密算法的时候确认下 …

如何安装 chacha20 加密算法

把以下代码复制执行即可

yum install m2crypto gcc -y
wget -N --no-check-certificate https://download.libsodium.org/libsodium/releases/libsodium-1.0.12.tar.gz
tar zfvx libsodium-1.0.12.tar.gz
cd libsodium-1.0.12
./configure
make && make install
echo "include ld.so.conf.d/*.conf" > /etc/ld.so.conf
echo "/lib" >> /etc/ld.so.conf
echo "/usr/lib64" >> /etc/ld.so.conf
echo "/usr/local/lib" >> /etc/ld.so.conf
ldconfig

OpenVZ平台Google BBR一键安装脚本(转)

你可以通过修改文件:/usr/local/haproxy-lkl/etc/port-rules 来配置需要加速的端口或端口范围。
请使用 service haproxy-lkl {start|stop|restart} 来 {开启|关闭|重启} 服务

原文地址:OpenVZ平台Google BBR一键安装脚本

说明:此前用的一直是91yun大神制作的openvz的BBR一键包,今天看到扩软博主也制作了个openvz的BBR一键包,就转过来了。不过对于VPS,还是建议选择KVM架构,可玩性高,想要速度快的VPS可参考:速度快,性价比高且稳定的VPS推荐:搬瓦工VPS图文购买教程。

更新:

[2017.07.24]
更新了liblkl-hijack.so并打上了最近网上很火的“魔改版”BBR补丁,同时更新了haproxy。老版本的朋友可以重新下载安装脚本再安装一遍,需要先停止当前的服务。

使用方法

已测试通过的系统:Ubuntu 14.04 x64、Ubuntu 16.04 x64、CentOS 6 x64、CentOS 7 x64只支持64位系统,要求glibc版本2.14以上。

wget --no-check-certificate https://raw.githubusercontent.com/kuoruan/shell-scripts/master/ovz-bbr/ovz-bbr-installer.sh
chmod +x ovz-bbr-installer.sh
./ovz-bbr-installer.sh

注意:安装失败的话,可能后台没有开启TUN/TAP。

需要配置的有如下几个选项:
  1. 需要加速的端口,即的SS端口。加速开启之后,流量会先经过BBR处理,之后再发送给后端的SS。

  2. 可能需要配置 “公网接口名称”,即你服务器上具有公网IP的接口名称。搬瓦工OpenVZ上默认都是venet0,但是有朋友可能需要安装在其他服务器上,所以我加入了此选项。

注意:在有firewalld的服务器上安装的时候,firewalld会干扰iptables的规则,造成网络不通(现在具体原因未知,谁有解决方案可以提示一下)。所以在装有firewalld的服务器上需要先退出firewalld:

systemctl stop firewalld
systemctl stop firewalld

如需卸载,请使用:

./ovz-bbr-installer.sh uninstall

错误说明

有些机器一切正常,但是加速失败。从网友的反馈来看,可能需要将SS的监听地址从vps IP改到127.0.0.1或者 0.0.0.0,具体未测试,加速失败的朋友可以试一试。

多端口加速

安装的时候只配置了一个加速端口,但是你可以配置多端口加速,配置方法非常简单。修改文件

# vi /usr/local/haproxy-lkl/etc/port-rules

在文件里添加需要加速的端口,每行一条,可以配置单个端口或者端口范围,以#开头的行将被忽略。 例如:8800或者8800-8810配置完成之后,只需要重启haproxy-lkl即可。

注:最初版本的实现是需要再开一个新端口,后来经人提醒,我又看了一下HAproxy的配置说明,可以直接代理后端端口,不必再开新端口。请注意,使用该方法后,如果HAproxy进程异常退出,会造成无法连接原有端口。所以,请确保在退出 HAproxy时是通过命令正常退出的,在退出时会自动清理原有的防火墙规则。

使用systemctl或者service命令来启动、停止和重启HAporxy-lkl:

systemctl {start|stop|restart} haproxy-lkl
service haproxy-lkl {start|stop|restart}

/usr/local/haproxy-lkl/etc/haproxy.cfg这个文件是通过port-rules自动生成的,每次启动都会重新生成,所以直接修改它的配置没用。 如果想要自定义配置,请修改启动文件:
/usr/local/haproxy-lkl/sbin/haproxy-lkl

更新glibc

  1. CentOS 6更新glibc,首先下载如下几个文件:

wget http://ftp.redsleeve.org/pub/steam/glibc-2.15-60.el6.x86_64.rpm \
http://ftp.redsleeve.org/pub/steam/glibc-common-2.15-60.el6.x86_64.rpm \
http://ftp.redsleeve.org/pub/steam/glibc-devel-2.15-60.el6.x86_64.rpm \
http://ftp.redsleeve.org/pub/steam/glibc-headers-2.15-60.el6.x86_64.rpm \
http://ftp.redsleeve.org/pub/steam/nscd-2.15-60.el6.x86_64.rpm
  1. 然后安装:

# rpm -Uvh glibc-2.15-60.el6.x86_64.rpm \
glibc-common-2.15-60.el6.x86_64.rpm \
glibc-devel-2.15-60.el6.x86_64.rpm \
glibc-headers-2.15-60.el6.x86_64.rpm \
nscd-2.15-60.el6.x86_64.rpm
  1. 如果以上步骤无法更新,可以手动编译更新

wget http://ftp.gnu.org/gnu/glibc/glibc-2.15.tar.gz
wget http://ftp.gnu.org/gnu/glibc/glibc-ports-2.15.tar.gz
tar -zxf glibc-2.15.tar.gz
tar -zxf glibc-ports-2.15.tar.gz
mv glibc-ports-2.15 glibc-2.15/ports
mkdir glibc-build-2.15
cd glibc-build-2.15
../glibc-2.15/configure --prefix=/usr --disable-profile --enable-add-ons --with-headers=/usr/include --with-binutils=/usr/bin
make all && make install
  1. 检查一下:

# ldd --version
ldd (GNU libc) 2.15
Copyright (C) 2012 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
Written by Roland McGrath and Ulrich Drepper.

已经升级到glibc 2.15了。

判断BBR已正常工作

判断bbr是否正常启动可以尝试ping 10.0.0.2,如果能通,说明bbr已经启动。

objc格式化输出

NSAutoreleasePool * pool = [[NSAutoreleasePool alloc] init];
  //常用类型的定义
  int i =10;
  BOOL isShow=TRUE;
  float f = 3.1415926;
  char a =120;
  NSString *name =@"Himi";
  //常用打印语句
  NSLog(@"字符串:%@",name);
  NSLog(@"字符:%c",a);
  NSLog(@"布尔值:%i",isShow);
  NSLog(@"整形:%i",i);
  NSLog(@"单精度浮点数: %f",f);
  NSLog(@"精度浮点数,且只保留两位小数:%.2f",f);
  NSLog(@"科学技术法:%e",f);
  NSLog(@"科学技术法(用最简短的方式):%g",f);
  NSLog(@"同时打印两个整数:i=%i,f=%f",i,f);
%@     对象
%d, %i 整数
%u     无符整形
%f     浮点/双字
%x, %X 二进制整数
%o     八进制整数
%zu    size_t
%p     指针
%e     浮点/双字 (科学计算)
%g     浮点/双字
%s     C 字符串
%.*s   Pascal字符串
%c     字符
%C     unichar
%lld   64位长整数(long long)
%llu   无符64位长整数
%Lf    64位双字
%e     是实数,用科学计数法计的