Linux学习
一、 必备命令
1、pwd指令
pwd指令的作用在于显示用户当前所处路径。
2、ls指令
语法:ls [选项][目录或文件]
功能:对于目录,该命令列出该目录下所有的子目录和文件;对于文件,将列出文件名以及其他信息。
3、cd指令
cd指令的作用是切换路径,让我们进入不同的路径下操作
二、 防火墙操作
查看防火墙状态
systemctl status firewalld
firewall-cmd --state
暂时关闭防火墙
systemctl stop firewalld
永久关闭防火墙
systemctl disable firewalld
开启防火墙
systemctl start firewalld
开放指定端口
firewall-cmd --zone=public --add-port=8080/tcp --permanent
关闭指定端口
firewall-cmd --zone=public --remove-port=8080/tcp --permanent
立即生效
firewall-cmd --reload
查看开放的端口
firewall-cmd --zone=public --list-ports
注意:
1、systemctl是管理Linux中服务的命令,可以对服务进行启动、停止、重启、查看状态等操作
2、firewall-cmd是Linux中专门用于控制防火墙的命令
3、为了保证系统安全,服务器的防火墙不建议关闭
三、 远程连接Linux Redis
首先,到Windows本地Redis安装目录目录框输入cmd回车,并输入下列命令,注意:-h后为ip,-p后为端口,-a后为密码
.\redis-cli.exe -h 192.168.44.128 -p 6379 -a 123456
四、 数据库远程连接权限
CREATE USER '用户名'@'host' IDENTIFIED BY '密码';
grant all privileges on *.* to '用户名'@'%' with grant option;
权限更新
flush privileges;
五、 Mysql主从复制
1、配置-主库Master
第一步
修改MySQL数据库配置文件/etc/my.cnf,添加如下配置
[mysqld]
log-bin=mysql-bin #启用二进制日志
server-id=100 #服务器唯一ID
第二步重启MySQL服务
systemctl restart mysqld
第三步登录MySQL数据库,执行下面sql
GRANT REPLICATION SLAVE ON *.* to 'xiaoming'@'%' identified by 'Root@123456';
第四步登录MySQL数据库,执行下面sql,记录下结果中File和Position的值
show master status;
2、配置-从库Slave
第一步
修改MySQL数据库配置文件/etc/my.cnf,添加如下配置
[mysqld]
server-id=100 #服务器唯一ID
第二步重启MySQL服务
systemctl restart mysqld
第三步登录MySQL数据库,执行下面sql,其中master_log_file和master_log_pos为上面配置-主库Master第三步中的File和Position的值;
change master to
master_host='192.168.44.128',master_user='xiaoming',master_password='Root@123456',master_log_file='mysql-bin.000002',master_log_pos=1042;
start slave;
第四步登录MySQL数据库,执行下面sql
show slave status;输出会很乱
show slave status\G;这样就竖着输出,不会乱
如果出现如下两个YES,则表示成功
3、错误解决
注意:如果从库所在Linux虚拟机服务器是从主库所在Linux虚拟机服务器克隆出来的,会导致mysql主从复制关于uuid重复,出现Slave_IO_Running: Connecting或Slave_IO_Running: No错误。为避免错误,则需要刷新uuid,具体操作如下:
- 第一种,删除/var/lib/mysql下的auto.cnf文件。然后重启mysql服务。
- 1、进入到mysql目录下
- 2、删除auto.cnf
- 3、重新启动mysql服务,会重新生成auto.cnf文件,其中的uuid会不一样。
cd /var/lib/mysql
rm -rf auto.cnf
systemctl restart mysqld
第二种,比第一种复杂点,但原理是一样的,都是为了修改auto.cnf中的uuid
1、先查看MySQL的安装位置;
show variables like 'datadir';
2、通过mysql生成uuid
select uuid();
3、复制生成的uuid,并进入配置文件,修改uuid
vim /var/lib/mysql/auto.cnf
server-uuid=复制的uuid
4、重启服务器和mysql服务
systemctl restart network
systemctl restart mysqld