ssh基于密钥的认证
基于密钥的认证
一台主机为客户端(基于某个用户实现)
1. 生成一对密钥
ssh-keygen -t {rsa|dsa}
扩展 —— ssh-keygen基本用法
- -t type : 指定加密算法
- -f filename : 指定密钥文件保存路径
- -N new_passphrase:指定密钥密码
基于密钥的认证
一台主机为客户端(基于某个用户实现)
1. 生成一对密钥
ssh-keygen -t {rsa|dsa}
扩展 —— ssh-keygen基本用法
hadoop用户可以以root的权限执行useradd, usermod命令
hadoop ALL=(root) NOPASSWD: /usr/sbin/useradd, PASSWD: /usr/sbin/usermod
别名(可以简单理解为组)
定义一个用户别名,组内包括hadoop用户,hadoop组,useradmin组
User_Alias USERADMIN = hadoop, %hadoop, %useradmin
定义一个命令别名,组内包括useradd, usermod, userdel, passwd命令,但是不能执行passwd root
Cmnd_Alias USERADMINCMND = /usr/sbin/useradd, /usr/sbin/usermod, /usr/sbin/userdel, /usr/bin/passwd [A-z]*, ! /usr/bin/passwd root
USERADMIN的用户可以以root命令执行USERADMINCMND的命令
USERADMIN ALL=(root) USERADMINCMND
一、MBR损坏
使用系统安装光盘引导进入紧急救援模式:boot: linux rescue
进入grub命令行模式
确认引导分区,使用find (hd0,0)/+TAB键的方式来确认
root (hd0,0)
setup (hd0)
二、grub配置文件丢失
配置文件丢失,将会引导至grub命令行模式
grub> root (hd0,0)
grub> kernel /vmlinuz-xxxx ro root=/dev/v0l0/root rhgb quiet
grub> initrd /initrd-xxxx
grub> boot
此时可以正常引导系统,重建/boot/grub/grub.conf即可
默认情况下,mysql5.1/5.5的复制功能是异步的,异步复制可以提供最佳的性能,主库把binlog日志发送给从库,这一动作就结束了,并不会验证是否接受完毕,但这同时也带来了很高的风险,这就意味着当主服务器发送故障时,有可能从机没有接受到主机发过来的binlog日志,会造成主服务器/从服务器的数据不一致,甚至在恢复时会造成数据丢失。
为了解决这个问题,mysql5.5引入了一种半同步复制模式,该模式可以确保从服务器接受完主服务器发送的binlog日志并写入自己的中继日志relay log里,然后会给主服务器一个反馈,告诉对方已经接收完毕,这时主库线程才返回当前session告知操作完成。当出现超市情况时,源主服务器会暂时切换到异步复制模式,知道至少有一台设置为半同步模式的从服务器及时收到信息为止。
开启binlog,且binlog-format=row
[sql]CREATE TABLE student
(id
int(10) unsigned NOT NULL AUTO_INCREMENT,name
varchar(10) NOT NULL DEFAULT '', class
int(10), score
varchar(10) NOT NULL DEFAULT '', PRIMARY KEY (id
));[/sql]
insert into student(name,class,score) values('a',1,56),('b',1,61),('c',2,78),('d',2,45),('e',3,76),('f',3,89),('g',4,43),('h',4,90);
update student set score='failure';
mysqlbinlog --no-defaults -v -v --base64-output=DECODE-ROWS bin-log.000039 | grep -B 15 'failure'