内网部署服务器总结
近期,部署了学校一个服务器,上传了工会的项目
关于不联网服务器部署,再次进行了学习
系统 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
为了保证数据库目录为与文件的所有者为 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
连接数据库
[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}直接换成用户名和密码,问题解决