Mysql 授权和用户管理

mysql的几个权限管理的命令,很不常用,要用的时候往往都想不起来,在此记录一下以便自己查阅。


授权

  • 增加权限

    1
    GRANT UPDATE ON database.table TO 'user'@'hostname';

所有数据库所有权限:GRANT ALL ON *.* TO ‘user’@'localhost'

一个数据库增删改查权限:GRANT SELECT, INSERT, UPDATE, DELETE ON testdb.* TO 'user''@'%'

  • 查询权限

    1
    SHOW GRANTS FOR 'user'@'hostname'

查询自己的权限SHOW GRANTS;

查看

docker-plex

最近又沉迷于docker,比较方便备份和迁移服务,因为每个服务依赖的路径和文件都是在容器启动参数中明确的。而不需要一个个去找,在需要迁移或者重装服务器的时候,也不用再去思考这个服务器上到底运行了哪些服务了。

刚完成了plex的docker化,在此记录一下。

plex有一个官方docker镜像:plexinc/pms-docker,但是不支持arm,于是找了一个替代:linuxserver/plex

然后启动文档还是可以使用官方镜像的README

理所应当的,我们使用桥接网络,让这个docker看起来像一个独立主机,这样我们不用映射端口,也不用占用宿主机上面的端口。

创建桥接网络可以参考我的上一篇博文: docker 桥接网络配置samba

查看

docker 桥接网络配置samba

刚才想到其实samba也是可以使用docker来管理的,并且可以使用桥接网络,不占用宿主机的端口,于是操作一番成功搭建好了,在此做个记录

创建一个桥接网络:

1
2
3
4
docker network create -d macvlan \
--subnet=192.168.2.0/24 \
--gateway=192.168.2.1 \
-o parent=eth0 physical
  1. 其中macvlan是网络类型
  2. 192.168.2.0/24是子网网段
  3. 192.168.2.1是网关地址
  4. eth0是父网卡
  5. physical是新建出来的网络名称

docker不会使用dhcp client来设定容器的局域网IP地址,而是按照docker网络的subnet参数直接递增分配IP,所以就有可能和局域网的其他主机产生冲突。
解决方法是创建容器时使用--ip=xxx.xxx.xxx.xxx 来手动指定一个内网IP地址,然后在路由器上做好dhcp绑定来防止IP冲突

可以使用--ip-range=192.168.2.128/26 选项来限制docker分配的ip范围,防止和dhcp分配的范围冲突

查看

小蚁智能摄像机 刷固件 破解 开启RTMP RTSP直播流

为小米IP夜视摄像机启用RTSP

小米有两种IP摄像头。第一个是2014年推出的,720P没有夜视,最新的一个是在2015年前推出的,具有夜视功能。除此之外,这两个版本之间的主要区别之一是RTSP协议。最老的固件能够通过RTSP协议访问,但是小米后来禁用了RTSP。这意味着最新的夜视IP摄像机不能用于群晖或其他NAS操作系统。

在百度谷歌搜索一通后,我找到了破解摄像头和开启RTSP协议的方法,只需要SD卡上放一些文件。

总的来说,我指的是一个非官方的网站下载小米IP相机固件。

除了启用RTSP协议外,我们还可以在一次升级中启用FTP,Telnet和HTTP Web协议。我测试了很多版本,我注意到并非所有版本都运行正常,但总是有效的是版本K.

查看

父母生你是为了什么?

中国的家长有哪些让人难以理解的神逻辑?

胡大曰
以前我也觉得自己的父母有很多我接受不了的神逻辑。现在我是奔四的人了,对社会和人都有了更多的理解。我发现很多本来觉得荒诞的事情,其实都有其潜在的逻辑。只不过这些逻辑不能拿到明面上来说罢了。

你要知道中国是一个农业国。仅仅就在 20 年前,小农经济还是大多数中国人的主要生活方式。而中国文化,尤其是中国式的家庭文化,是建立在小农经济的基础之上的。你要知道,我们的父母,即使已经脱离农村和农业生产多年,但他们中的绝大多数,在思想上依然是小农。

小农经济是什么样的呢? 在古代农业社会,你和你老婆两个人从你爹那里继承了瓦房一间几亩薄田,收成仅能糊口。你要怎么样才能过上好日子呢? 读书走科举路线? 别逗了,即使是在科举发展顶峰的清朝,秀才占人口的比例也不超过万分之二,举人进士就更不用说了。你爹要是没点家底的话,你连字都不会认识,更别说走科举独木桥了。练武走军功路线? 更别逗了,所谓“穷学文,富学武”,你家要不是当地豪强的话,治世你就是大头兵,乱世就是炮灰。

在小农经济中,作为一个普通人,你唯一能过上好日子的希望就是,哐哐哐哐连生五个儿子五个女儿。

那年头孩子又不用考大学上补习班学钢琴,五六岁就能帮家里干活了,饲养成本不过就桌上多加一双筷子,粥里多加一碗水罢了。等孩子们大了你就牛逼了啊。家里妥妥的五个壮劳力,要干活能开荒,要打架谁也不怕,五个女儿嫁出去又多了五个亲家,你说还要给五个儿子娶媳妇? 你有五个儿子,彩礼嫁妆帐上还能吃了亏了?

最重要的是,这五个儿子都是给你干活的,只用管饭,工钱都不用给,用儿子干活比雇工人干活划算多了。到了儿子再生儿子,你孙子也成了壮劳力了,一大家子几十口人唯你独尊,谁能不羡慕你?在古代农业社会,孩子就相当于一个大牲口,制造成本几乎为零,出把子力气就可以了,抚养成本也很低,回报可要高的多,生个孩子比买头牛可划算多了。

查看

使用gost搭建一个socks5代理服务器

本教程仅适用于centos7和ubuntu16这样有systemd的系统。低版本系统请勿尝试。

wget "https://github.com/ginuerzh/gost/releases/download/v2.5-rc2/gost_2.5-rc2_linux_amd64.tar.gz"
tar -zxvf gost_2.5-rc2_linux_amd64.tar.gz
mv gost_2.5-rc2_linux_amd64/gost /usr/bin/gost
chmod +x /usr/bin/gost

cat>/lib/systemd/system/gost.service<<EOF
Description=i gost service
After=network.target

[Service]
ExecStart=/usr/bin/gost -C /etc/gost.json

[Install]
WantedBy=multi-user.target
EOF
cat>/etc/gost.json<<EOF
{
    "Debug": true,
    "ServeNodes": [
        "socks5://user:pass@:1088"
    ],
    "ChainNodes": [
    ]
}
EOF
systemctl enable /lib/systemd/system/gost.service
systemctl start gost

你的socks5代理设置在1088端口,用户名user密码pass
你可以编辑/etc/gost.json来修改代理配置。
可以参阅gost教程:https://docs.ginuerzh.xyz/gost/configuration/
完成

mysql显示当前执行sql: show processlist 详解

最近排查一些MySQL的问题,会经常用到 show processlist,所以在这里把这个命令总结一下,做个备忘,以备不时只需。show processlist 是显示用户正在运行的线程,需要注意的是,除了 root 用户能看到所有正在运行的线程外,其他用户都只能看到自己正在运行的线程,看不到其它用户正在运行的线程。除非单独个这个用户赋予了PROCESS 权限。
v2-eb4254945a43d5fdc0e8718da8183aa6_b.jpg

v2-1c028842dcc9e9b659279d3660e04e29_b.jpg

v2-8f56f112c1809b4308258e154de41942_b.jpg

show processlist 显示的信息都是来自MySQL系统库 information_schema 中的 processlist 表。所以使用下面的查询语句可以获得相同的结果:

查看

ss-redir透明代理

1、编译出ss-redir

2、运行ss-redir在12345端口,如果开启udp,请一定确认服务端支持udp

3、将经过本机TCP流量转发到ss-redir

#TCP
iptables -t nat -N SSTCP
iptables -t nat -A SSTCP -d 47.88.230.202/32 -j RETURN
iptables -t nat -A SSTCP -d 0.0.0.0/8 -j RETURN
iptables -t nat -A SSTCP -d 10.0.0.0/8 -j RETURN
iptables -t nat -A SSTCP -d 127.0.0.0/8 -j RETURN
iptables -t nat -A SSTCP -d 169.254.0.0/16 -j RETURN
iptables -t nat -A SSTCP -d 172.16.0.0/12 -j RETURN
iptables -t nat -A SSTCP -d 192.168.0.0/16 -j RETURN
iptables -t nat -A SSTCP -d 224.0.0.0/4 -j RETURN
iptables -t nat -A SSTCP -d 240.0.0.0/4 -j RETURN
iptables -t nat -A SSTCP -p tcp -j REDIRECT --to-ports 12345
iptables -t nat -A PREROUTING -j SSTCP

4、使用TPROXY target转发UDP流量

#增加IP mark, tproxy转发需要
ip rule add fwmark 0x01/0x01 table 100
ip route add local 0.0.0.0/0 dev lo table 100
#UDP
iptables -t mangle -N SSUDP
iptables -t mangle -A SSUDP -d 47.88.230.202/32 -j RETURN
iptables -t mangle -A SSUDP -d 0.0.0.0/8 -j RETURN
iptables -t mangle -A SSUDP -d 10.0.0.0/8 -j RETURN
iptables -t mangle -A SSUDP -d 127.0.0.0/8 -j RETURN
iptables -t mangle -A SSUDP -d 169.254.0.0/16 -j RETURN
iptables -t mangle -A SSUDP -d 172.16.0.0/12 -j RETURN
iptables -t mangle -A SSUDP -d 192.168.0.0/16 -j RETURN
iptables -t mangle -A SSUDP -d 224.0.0.0/4 -j RETURN
iptables -t mangle -A SSUDP -d 240.0.0.0/4 -j RETURN
iptables -t mangle -A SSUDP -p udp -j TPROXY --on-port 12345 --on-ip 0.0.0.0 --tproxy-mark 0x1/0x1
iptables -t mangle -A PREROUTING -j SSUDP

3、完成。如有异常,请查看ss-redir的log,记得加上-v

理论上redsocks也可以这样。