CentOS的安装及相关软件的配置
U盘安装CentOS7的关键步骤
下面的操作很关键,影响是否成功安装,一定要谨慎!!
按↑↓键进行移动,选择到Install CentOS 7(别着急按回车)
按table键 屏幕下面会弹出一行命令
vmlinuz initrd=initrd.img inst.stage2=hd:LABEL=CentOS\x207\x20x86_64 quiet
修改为
vmlinuz initrd=initrd.img linux dd quiet
按回车
接下来在显示的列表中可以查看硬盘信息,可以很明显看到自己的U盘盘符,我这里是sdb4
使用ctrl+alt+del重启电脑,重复上面的步骤,这一次将
vmlinuz initrd=initrd.img inst.stage2=hd:LABEL=CentOS\x207\x20x86_64 quiet
改成
vmlinuz initrd=initrd.img inst.stage2=hd:/dev/sdb4(你自己的U盘盘符) quiet
回车 等待安装程序启动,开始进入CentOS常规安装流程。
Centos7Linux安装jdk1.8.0_202的详细步骤
一、检查系统自带jdk
[root@localhost ~]# java -version
openjdk version "1.8.0_102"
OpenJDK Runtime Environment (build 1.8.0_102-b14)
OpenJDK 64-Bit Server VM (build 25.102-b14, mixed mode)
二、查看相关openjdk文件
[root@localhost ~]# rpm -qa | grep openjdk
java-1.8.0-openjdk-headless-1.8.0.102-4.b14.el7.x86_64
java-1.8.0-openjdk-1.8.0.102-4.b14.el7.x86_64
三、删除软件包,并且忽略软件包的依赖关系
[root@localhost ~]# rpm -e --nodeps java-1.8.0-openjdk-headless
[root@localhost ~]# rpm -e --nodeps java-1.8.0-openjdk
四、下载jdk8
https://repo.huaweicloud.com/java/jdk/8u202-b08/jdk-8u202-linux-x64.tar.gz
五、使用winSCP或其他软件将下载的jdk-8u202-linux-x64.tar.gz上传到/usr
六、解压文件,解压后产生jdk1.8.0_202目录
[root@localhost usr]#tar -zxvf jdk-8u202-linux-x64.tar.gz
[root@localhost usr]# ls
bin games jdk1.8.0_202 lib libexec sbin src
etc include jdk-8u202-linux-x64.tar.gz lib64 local share tmp
七、编辑配置文件
vi /etc/profile
按INSERT进入插入状态,在配置文件最后添加以下文本,按ESC后输入:wq,保存后退出。
JAVA_HOME=/usr/jdk1.8.0_202
CLASSPATH=.:$JAVA_HOME/lib.tools.jar
PATH=$JAVA_HOME/bin:$PATH
export JAVA_HOME CLASSPATH PATH
八、配置生效
source /etc/profile
九、检验是否安装成功
[root@localhost ~]# java -version
java version "1.8.0_202"
Java(TM) SE Runtime Environment (build 1.8.0_202-b08)
Java HotSpot(TM) 64-Bit Server VM (build 25.202-b08, mixed mode)
Centos7Linux安装Tomcat9并手动启动的详细步骤
一、使用winSCP或其他软件将apache-tomcat-9.0.56.tar.gz上传到/data
二、解压文件,产生/data/apache-tomcat-9.0.56目录
[root@localhost data]# tar -zxvf apache-tomcat-9.0.56.tar.gz
三、手动启动,进入/data/apache-tomcat-9.0.56/bin目录
./startup.sh #启动
./shutdown.sh #停止
四、防火墙配置,开启8080端口
[root@localhost bin]# firewall-cmd --add-port=8080/tcp --zone=public --permanent
success
[root@localhost bin]# firewall-cmd --reload
success
[root@localhost bin]# systemctl restart firewalld
Tomcat9的其他配置多端口多目录
1、server.xml配置。在最后的</Server>前面增加下面的代码
<Service name="WendangBlog">
<Connector connectionTimeout="20000" port="8081" protocol="HTTP/1.1" redirectPort="8443"/>
<Connector port="8010" protocol="AJP/1.3" redirectPort="8443"/>
<Engine defaultHost="localhost" name="Catalina">
<Realm className="org.apache.catalina.realm.LockOutRealm">
<Realm className="org.apache.catalina.realm.UserDatabaseRealm" resourceName="UserDatabase"/>
</Realm>
<Host appBase="wendang" autoDeploy="true" name="localhost" unpackWARs="true">
<Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs" pattern="%h %l %u %t "%r" %s %b" prefix="localhost_access_log" suffix=".txt"/>
<!-- <Context path="" docBase="F:\html" debug="0" reloadble="true"/> -->
</Host>
</Engine>
</Service>
2、在apache-tomcat-9.0.56建立目录wendang
[root@localhost apache-tomcat-9.0.56]# mkdir wendang
[root@localhost apache-tomcat-9.0.56]# ll
总用量 152
drwxr-x---. 2 root root 4096 12月 22 17:03 bin
-rw-r-----. 1 root root 18970 12月 2 22:30 BUILDING.txt
drwx------. 3 root root 4096 12月 25 14:51 conf
-rw-r-----. 1 root root 6210 12月 2 22:30 CONTRIBUTING.md
drwxr-x---. 2 root root 4096 12月 22 17:03 lib
-rw-r-----. 1 root root 57092 12月 2 22:30 LICENSE
drwxr-x---. 2 root root 4096 12月 25 14:49 logs
-rw-r-----. 1 root root 2333 12月 2 22:30 NOTICE
-rw-r-----. 1 root root 3378 12月 2 22:30 README.md
-rw-r-----. 1 root root 6898 12月 2 22:30 RELEASE-NOTES
-rw-r-----. 1 root root 16507 12月 2 22:30 RUNNING.txt
drwxr-x---. 2 root root 4096 12月 22 17:03 temp
drwxr-x---. 7 root root 4096 12月 2 22:30 webapps
drwxr-xr-x. 3 root root 4096 12月 25 14:47 wendang
drwxr-x---. 3 root root 4096 12月 22 17:08 work
3、重启tomcat服务
4、配置防火墙
[root@localhost bin]# firewall-cmd --add-port=8081/tcp --zone=public --permanent
[root@localhost bin]# firewall-cmd --reload
[root@localhost bin]# systemctl restart firewalld
5、开机自动启动
(1)修改脚本文件
[root@localhost bin]# vi /data/apache-tomcat-9.0.56/bin/catalina.sh
添加以下内容(如图)
JAVA_HOME=/usr/jdk1.8.0_202
JRE_HOME=$JAVA_HOME/jre
(2)在/usr/lib/systemd/system/中创建tomcat9.service文件
[root@localhost apache-tomcat-9.0.56]# vi /usr/lib/systemd/system/tomcat9.service
粘贴下面的内容到tomcat9.service文件
[Unit]
Description=Tomcat
After=syslog.target network.target remote-fs.target nss-lookup.target
[Service]
Type=oneshot
ExecStart=/data/apache-tomcat-9.0.56/bin/startup.sh
ExecStop=/data/apache-tomcat-9.0.56/bin/shutdown.sh
ExecReload=/bin/kill -s HUP $MAINPID
RemainAfterExit=yes
[Install]
WantedBy=multi-user.target
(3)设置开机启动
[root@localhost apache-tomcat-9.0.56]# systemctl enable tomcat9.service
Created symlink from /etc/systemd/system/multi-user.target.wants/tomcat9.service to /usr/lib/systemd/system/tomcat9.service.
(4)其他命令
# 启动/停止/重启tomcat
systemctl start/stop/restart tomcat9.service # 启动tomcat
#查看日志内容
tail -f /data/apache-tomcat-9.0.56/logs/catalina.out
Centos7Linux安装Mysql5.7的详细步骤
1、检查已安装的mariadb,并强制卸载
[root@localhost ~]# rpm -qa | grep mariadb
mariadb-libs-5.5.52-1.el7.x86_64
[root@localhost ~]# rpm -e --nodeps mariadb-libs-5.5.52-1.el7.x86_64
2、上传mysql-5.7.36-linux-glibc2.12-x86_64.tar.gz到服务器/usr/local目录
3、添加mysql组和mysql用户
[root@localhost ~]# groupadd mysql
[root@localhost ~]# useradd -r -g mysql mysql
-r 参数表示mysql用户是系统用户,不可用于登录系统。
-g 参数表示把mysql用户添加到mysql用户组中。
4、解压mysql安装包到指定的目录 /usr/local
[root@localhost ~]# cd /usr/local //进入目录
[root@localhost local]# tar -zxvf mysql-5.7.36-linux-glibc2.12-x86_64.tar.gz
5、将解压后的目录改名为mysql
[root@localhost local]# mv mysql-5.7.36-linux-glibc2.12-x86_64 mysql
6、更改权限
[root@localhost local]# chown -R mysql:mysql mysql/
7、创建配置文件vi /etc/my.cnf
[client]
# 设置mysql客户端默认字符集
default-character-set = utf8mb4
#如果不设置会报错ERROR 2002 (HY000): Can't connect to local MySQL server through socket
socket=/data/mysql57/data/mysql.sock
[mysqld]
#设置3306端口
port=3306
character-set-server = utf8mb4
# 设置mysql的安装目录
basedir=/usr/local/mysql
# 设置mysql数据库的数据的存放目录
datadir=/data/mysql57/data
socket=/data/mysql57/data/mysql.sock
# 禁用主机名解析
skip-name-resolve
# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB
lower_case_table_names=1
# 过小可能会导致写入(导入)数据失败
max_allowed_packet = 256M
group_concat_max_len = 10240
# 允许最大连接数
max_connections=200
# 提到 join 的效率
join_buffer_size = 16M
# 事务日志大小
innodb_log_file_size = 256M
# 日志缓冲区大小
innodb_log_buffer_size = 4M
# 事务在内存中的缓冲
innodb_log_buffer_size = 3M
[mysqldump]
# 开启快速导出
quick
default-character-set = utf8mb4
max_allowed_packet = 256M
8、创建目录,改变权限
#递归创建目录
[root@localhost local]# mkdir -p /data/mysql57/data
#更改权限
[root@localhost local]# chown -R mysql:mysql /data/mysql57/data
#初始化数据库,记下最后一行的密码(牢记初次登录需要)
[root@localhost mysql]# bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/data/mysql57/data --explicit_defaults_for_timestamp
报错:bin/mysqld: error while loading shared libraries: libaio.so.1: cannot open shared object file: No such file or directory
上传 libaio-0.3.109-13.el7.x86_64.rpm到/usr/local
安装:rpm -ivh libaio-0.3.109-13.el7.x86_64.rpm
9、启动数据库
#源目录启动数据库
[root@localhost mysql]# /usr/local/mysql/support-files/mysql.server start
Starting MySQL.Logging to '/data/mysql57/data/localhost.localdomain.err'.
SUCCESS!
10、设置自动启动mysql
# 复制启动脚本到资源目录
[root@localhost mysql]# cp /usr/local/mysql/support-files/mysql.server /etc/rc.d/init.d/mysqld
# 增加mysqld服务控制脚本执行权限
[root@localhost mysql]# chmod +x /etc/rc.d/init.d/mysqld
#将mysqld添加到系统服务,并检查是否生效
[root@localhost mysql]# chkconfig --add mysqld
[root@localhost mysql]# chkconfig --list mysqld
注意:该输出结果只显示 SysV 服务,并不包含原生 systemd 服务。SysV 配置数据可能被原生 systemd 配置覆盖。如果您想列出 systemd 服务,请执行 'systemctl list-unit-files'。欲查看对特定 target 启用的服务请执行'systemctl list-dependencies [target]'。
mysqld 0:关 1:关 2:开 3:开 4:开 5:开 6:关
数字代表运行级别0:关机1:单用户模式2:无网络连接的多用户命令行模式3:有网络连接的多用户命令行模式4:保留级别5:带图形界面的多用户模式6:重新启动
#启动服务
[root@localhost mysql]# service mysqld start
Starting MySQL. SUCCESS!
#可以使用以下命令启动/停止/重启mysqld服务
service mysqld start/stop/restart
11、登录mysql,修改初始密码和远程登录权限
# 建立一个链接文件。因为系统默认会查找/usr/bin下的命令。
ln -s /usr/local/mysql/bin/mysql /usr/bin
#以root用户登录,输入系统产生的随机密码
[root@localhost mysql]# mysql -uroot -p
Enter password:
#登录以后,修改用户密码
mysql> set password for root@localhost=password("用户新密码");
#设置root远程登录
mysql> GRANT ALL PRIVILEGES ON *.* TO'root'@'%' IDENTIFIED BY '用户密码' WITH GRANT OPTION;
Query OK, 0 rows affected, 1 warning (0.00 sec)
#更新权限
mysql> FLUSH PRIVILEGES;
Query OK, 0 rows affected (0.00 sec)
12、防火墙的设置
mysql> exit; //退出mysql
#为firewalld添加开放mysql3306端口
[root@localhost /]# firewall-cmd --zone=public --add-port=3306/tcp --permanent
[root@localhost /]# firewall-cmd --reload //重启防火墙,上面开启的端口生效
#也可以使用关闭/开启防火墙
[root@localhost /]# systemctl stop/start firewalld.service //关闭防火墙
Mysql主从同步复制设置步骤的精简记录
如果已有数据,需要先做复制传输,而后做同步。
一、主库设置
1.修改vi /etc/my.cnf添加到[mysqld]中
#开启二进制日志
log-bin=mysql-bin
#设置server-id,服务器唯一ID,可取IP最后一段
server-id=223
innodb_file_per_table=1
# 不同步哪些数据库
binlog-ignore-db = mysql
binlog-ignore-db = information_schema
binlog-ignore-db=performance_schema
2.重启数据库服务
service mysqld restart
3.登录数据库,创建用户,查看主库状态
create user 'abc'@'%' identified by '123';
grant replication slave on *.* to 'abc'@'%';
flush privileges;
show master status;
#记录File|Position的值
二、从库设置
1.vi /etc/my.cnf
log-bin=mysql-bin
server-id=21
2.重启从库
service mysqld restart
3.执行同步命令
mysql> CHANGE MASTER TO
MASTER_HOST='10.115.141.223',
MASTER_USER='abc',
MASTER_PASSWORD='123',
MASTER_LOG_FILE='mysql-bin.000003',
MASTER_LOG_POS=154;
4.启动同步进程
start slave;
5、查看slave状态,下面两项都是YES表示成功同步
mysql> show slave status\G;
Slave_IO_Running: Yes
Slave_SQL_Running: Yes
三、重新连接的过程
从:stop slave;
主:show master status;
从:同步命令chanage master to ***
从:start slave;
从:show slave status\G
Linux用户的相关命令
一、永久删除用户
[root@localhost ~]# userdel 用户名
[root@localhost ~]# groupdel 用户组名
[root@localhost ~]# usermod -G 用户组 用户 //强制删除该用户的主目录和主目录下的所有文件和子目录
二、查看用户和用户组
#查看可以登录系统的用户
[root@localhost ~]# cat /etc/passwd | grep -v /sbin/nologin | cut -d : -f 1
#查看全部用户
[root@localhost ~]# cut -d : -f 1 /etc/passwd
查看Tomcat日志
Tomcata安装路径为/data/apache-tomcat-9.0.56
[root@localhost conf]# tail -f /data/apache-tomcat-9.0.56/logs/catalina.out