近期,部署了学校一个服务器,上传了工会的项目
关于不联网服务器部署,再次进行了学习
系统 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=457902017-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 stopmysqladmin shutdown
重启:
使用 service 启动:service mysqld restart使用 mysqld 脚本启动:/etc/inint.d/mysqld restart
连接数据库
[root@slave5 ~]# mysql -u root -pEnter 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}直接换成用户名和密码,问题解决