内网部署服务器总结

时间:2022-06-02 05:52:30

近期,部署了学校一个服务器,上传了工会的项目

关于不联网服务器部署,再次进行了学习

系统 centos7 

tomcat7.0.20

jdk1.8.0.144

mysql5.7.20

 

一、配置jdk

1.拆卸默认的jdk

[root@localhost ~]$ rpm -qa | grep openjdk | grep -v grep    查找jdk

rpm -e –nodeps **********(jdk名称)  //拆卸

2.进入放置jdk的目录下解压jdk

tar -zxvf jdk-8u144-linux-x64.tar.gz

3.配置环境变量

vi /etc/profile

export JAVA_HOME=/home/HISTgonghui/e/jdk/jdk1.8.0_144

export CLASSPATH=.:$JAVA_HOME/jre/lib/rt.jar:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar  

export PATH=$PATH:$JAVA_HOME/bin

4.测试是否成功

java -version

 

报权限不足,使用sudo命令,至此jdk大功告成了。但这只是万里长城第一步

 

二、配置mysql 离线rmp包安装

1.先去官网下载rmp离线安装包,我下载的是  mysql-5.7.20-1.el7.x86_64.rpm-bundle.tar

2.进入目录解压

tar  -zxvf mysql-5.7.20-1.el7.x86_64.rpm-bundle.tar  //如果权限不足,sudo

3.拆卸centos7自带的mariadb

rpm -qa|grep mariadb         //查询出已安装的mariadb
rpm -e --nodeps 文件名      //卸载 , 文件名为使用rpm -qa|grep mariadb 命令查出的所有文件
4.安装mysql
[root@slave5 ~]# rpm -ivh mysql-community-common-5.7.20-1.el7.x86_64.rpm 
[root@slave5 ~]# rpm -ivh mysql-community-libs-5.7.20-1.el7.x86_64.rpm
[root@slave5 ~]# rpm -ivh mysql-community-client-5.7.20-1.el7.x86_64.rpm 
[root@slave5 ~]# rpm -ivh mysql-community-server-5.7.20-1.el7.x86_64.rpm
按照顺序安装,因为这几个包存在依赖关系
5.数据库的初始化

为了保证数据库目录为与文件的所有者为 mysql 登陆用户,如果你是以 root 身份运行 mysql 服务,需要执行下面的命令初始化

[root@slave5 ~]#  mysqld --initialize --user=mysql

如果是以 mysql 身份运行,则可以去掉 --user 选项。

另外 --initialize 选项默认以“安全”模式来初始化,则会为 root 用户生成一个密码并将该密码标记为过期,登陆后你需要设置一个新的密码,

而使用 --initialize-insecure 命令则不使用安全模式,则不会为 root 用户生成一个密码。

这里演示使用的 --initialize 初始化的,会生成一个 root 账户密码,密码在log文件里,红色区域的就是自动生成的密码

内网部署服务器总结
[root@slave5 ~]# cat /var/log/mysqld.log 
2017-04-13T10:00:36.294549Z 0 [Warning] TIMESTAMP with implicit DEFAULT value is deprecated. Please use --explicit_defaults_for_timestamp server option (see documentation for more details).
2017-04-13T10:00:36.848923Z 0 [Warning] InnoDB: New log files created, LSN=45790
2017-04-13T10:00:36.961351Z 0 [Warning] InnoDB: Creating foreign key constraint system tables.
2017-04-13T10:00:37.153654Z 0 [Warning] No existing UUID has been found, so we assume that this is the first time that this server has been started. Generating a new UUID: 0ae74223-2030-11e7-abde-08002774d86f.
2017-04-13T10:00:37.185725Z 0 [Warning] Gtid table is not ready to be used. Table 'mysql.gtid_executed' cannot be opened.
2017-04-13T10:00:37.229524Z 1 [Note] A temporary password is generated for root@localhost: %kWTz,Ml?3Zs
内网部署服务器总结
这个就是数据库的初始密码

6.启动数据库

现在启动mysql数据库systemctl start mysqld.service

[root@slave5 ~]# systemctl start mysqld.service

可以使用下面两个命令对mysql进行停止,启动和重启:

启动:

使用 service 启动:service mysqld start
使用 mysqld 脚本启动:/etc/inint.d/mysqld start
使用 safe_mysqld 启动:safe_mysqld&

停止:

使用 service 启动:service mysqld stop
使用 mysqld 脚本启动:/etc/inint.d/mysqld stop
mysqladmin shutdown 

重启:

使用 service 启动:service mysqld restart
使用 mysqld 脚本启动:/etc/inint.d/mysqld restart

 
7.

连接数据库

[root@slave5 ~]# mysql -u root -p
Enter password:

密码输入:%kWTz,Ml?3Zs

修改密码:

mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY 'new_password';

 

8.修改mysql中文乱码问题

修改/etc/mysql/my.cnf

加入这几行

[mysqld]
character_set_server=utf8
[mysql]
default-character-set= utf8
[client]
default-character-set = utf8

 

9.为mysql中root用户设置权限

创建新的用户名和密码
create user username identified by password

给用户分配权限
GRANT privileges ON databasename.tablename TO 'username'@'host'
grant all privileges on *.* to 'username'@'localhost' identified by 'password'

删除权限
REVOKE ALL PRIVILEGES ON *.* FROM 'username'@'localhost';

分配指定库的权限
GRANT ALL PRIVILEGES ON database1.* TO 'username'@'localhost' IDENTIFIED BY 'password';

分配指定操作的权限
GRANT SELECT, UPDATE ON database1.* TO 'username'@'localhost' IDENTIFIED BY 'password';

刷新权限
FLUSH PRIVILEGES

删除用户
DROP USER username@localhost;

设置默认的编码
修改/etc/my.cnf配置文件,在[mysqld]下添加编码配置,如下所示
character_set_server=utf8
init_connect='SET NAMES utf8'

重启mysql
systemctl restart mysqld

更新用户的密码
SET PASSWORD FOR 'username'@'localhost' = PASSWORD("123456");


10.打开centos防火墙,开放3306端[caibo@localhost /]$ firewall-cmd --zone=public --add-port=3306/tcp --permanent

success
[caibo@localhost /]$ firewall-cmd --reload

systemctl stop firewalld.service #停止
systemctl disable firewalld.service #禁用
mysql安装后还要允许远程连接,其他服务器才能连接到本地的数据库。

mysql账户是否不允许远程连接。如果无法连接可以尝试以下方法:

mysql -u root -p //登录MySQL
mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'%'WITH GRANT OPTION; //任何远程主机都可以访问数据库
mysql> FLUSH PRIVILEGES; //需要输入次命令使修改生效
mysql> EXIT //退出

也可以通过修改表来实现远程:

mysql -u root -p

mysql> use mysql;
mysql> update user set host = '%' where user = 'root';
mysql> select host, user from user;

至此,mysql离线安装完毕

三、安装tomcat
1.下载tomcat,我下载的是apache-tomcat-7.0.82
2.修改configuration下面的service-user加入管理员用户
3.开始使用,可以将项目放到root目录下,这样可以省去输入项目名

四、本次装机总结
本次全程离线装机,充分考研了linux功底,也暴露出我自己linux水平的不足
1.当发现外网无法访问3306,8080,80端口时,先看下端口是否开启,再关闭防火墙试试,最后考虑是否是主机安全组策略未开放端口
2.当连接成功,但是无法连接mysql时,Could not create connection to database server
本次解决办法,修改spring配置文件,applicationContent.xml,将其中的数据库{user},{password}直接换成用户名和密码,问题解决