Ubuntu下 JDK、tomcat、redis离线安装

前言

运行环境:Ubuntu14 server 64位

准备离线安装包jdk7u79linuxx64.tar.gzapache-tomcat-7.0.63.tar.gzredis-3.2.12.tar.gz

 

Jdk安装

1、 上传jdk7u79linuxx64.tar.gz包/usr/local/installPackageinstallPackage自定义目录,可随意上传到一个目录

2、 /usr/local目录下创建Java目录:sudo mkdir java

3、 解压jdk安装包到Java目录下:sudo tar -xzvf jdk7u79linuxx64.tar.gz -C /usr/local/java/

4、 /usr/local/java目录下修改解压缩文件名sudo mv jdk1.7.0_79 jdk

5、 配置Java环境变量sudo vi /etc/profile ,在末尾加入:

export JAVA_HOME=/usr/local/java/jdk

export PATH=$JAVA_HOME/bin:$PATH

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

export JRE_HOME=$JAVA_HOME/jre

保存退出

6、 让环境变量立即生效:source profile

验证环境变量是否正确:java –version 出现下图表示配置成功

 

Tomcat安装

1、 上传apache-tomcat-7.0.63.tar.gz包/usr/local/installPackage

2、 解压安装包到/usr/local目录下:sudo tar -xzvf apache-tomcat-7.0.63.tar.gz -C /usr/local/

3、 /usr/local目录下修改解压缩文件名:sudo mv apache-tomcat-7.0.63 tomcat

4、 启动tomcat/usr/local/tomcat/bin/.startup.sh

出现以上打印表示tomcatlogs日志文件夹没有写入的权限导致启动失败,需要给logs文件赋权:在tomcat目录下执行:sudo chmod 777 logs/

然后进入/usr/local/tomcat/conf/目录下,给目录中所有的配置文件赋权:

sudo chmod 777 *

再次启动tomcatkillall -9 java;/usr/local/tomcat/bin/.startup.sh

查看tomcat是否已启动ps –ef | grep java

通过网页访问tomcat主页http://ip:8080

若网页访问出现错误,查看tomcat日志:tail –f /usr/local/tomcat/logs/catalina.out-f表示查询当前实时日志打印,查询之前日志可替换成-500(行数))

 

出现上述错误,意思是tomcatwork目录创建缓存的文件失败,这时需要给work目录赋权:移动到tomcat目录下:sudo chmod 777 work/

再次重启tomcatkillall -9 java;/usr/local/tomcat/bin/startup.sh

直到网页可以正常访问tomcat主页,如下图:

tomcat启动一半卡住如图:

需修改jdk配置,进入jdk安装目录后执行:vi jre/lib/security/java.security

修改securerandom.source=file:/dev/urandom

 

 

Redis安装

1、 上传redis-3.2.12.tar.gz包/usr/local/installPackage

2、 /usr/local/目下创建Redis_src目录sudo mkdir Redis_src

同时创建redis目录sudo mkdir redis

在redis目录下创建配置目录conf

3、 加压缩安装包:sudo tar -xzvf redis-3.2.12.tar.gz -C /usr/local/Redis_src

4、 进入/usr/local/Redis_src/redis-3.2.12/目下进行编译sudo make

5、 执行安装到/usr/local/redis/目下sudo make PREFIX=/usr/local/redis install

(直接执行sudo make install默认安装/usr/local/bin目录

6、 /usr/local/redis目录创建一个bin目录,且bin目录下会生成redis的执行文件

7、 拷贝配置文件:sudo cp /usr/local/Redis_src/redis-3.2.12/redis.conf /usr/local/redis/conf

8、 修改配置:sudo vi /usr/local/redis/conf/redis.conf

找到bind 127.0.0.1 改为bind 0.0.0.0(开启redis远程连接访问的功能

找到 daemonize no 改为daemonize yes(开启redis后台运行的功能

找到 requirepass 取消前面的#号取消注释)改为requirepass 123456(开启redis密码,123456自定义的密码

9、 启动redis/usr/local/redis/bin/redis-server /usr/local/redis/conf/redis.conf

10、 连接redis验证是否启动成功:

/usr/local/redis/bin/redis-cli –a 123456123456密码

如下图表示启动成功(也可通过客户端软件直接连接验证

11、 redis持久化配置(安装redis,可不用以下配置修改redis.conf

  11.1介绍

  RDB一个时间间隔保存某个时间点的一个数据快照

  AOF记录每一次redis服务收到操作数据回复,这些记录的操作会逐条执行从而重建原来的数据操作命令记录的格式和redis协议一致追加的方式进行保存。

  11.2RDB配置:

  

  dbfilenameRDB文件名,默认为dump.rdb

  dir文件保存路径,默认为./RDBAOF共用此路径配置

  

  save保存点,举例save 900 1:每900,若数据发生了1以上的变动,则redis会自动保存快照文件。

  若要禁用快照保存功能可以注释掉所有的save配置或者在最后一个save添加一条save “”配置。

  11.3AOF配置:

  

  appendonlyno改为yes则开启AOF

  appendfilenameAOF文件名

  

  always当有新命令追加AOF调用fsync速度最慢,但最安全。

  everysec:每秒fsync一次。速度,安全性不错(最大丢失1数据)

  no从不fsync交由redis系统自行处理,速度最快,安全性没保障

12、 redis的一个错误记录

(error) MISCONF Redis is configured to save RDB snapshots, but is currently not able to persist on disk. Commands that may modify the data set are disabled. Please check Redis logs for details about the error.

原因Redis配置为保存RDB快照,由于强制关闭了redis服务目前无法在磁盘上持久保存,导致修改数据集的写命令被禁用。

解决redis安装目录执行:./redis-cli -a 123456(登录密码)后输入:

config set stop-writes-on-bgsave-error no

意思为:忽略此异常,让redis服务继续正常运行

这样做redis还是无法把数据写入磁盘进行持久化保存

修改sudo vi /etc/sysctl.conf配置文件,新增一条配置:

vm.overcommit_memory=1

 

Mysql配置

1、 修改mysql配置文件,开启远程访问

vi /etc/mysql/mysql.conf.d/mysqld.cnf

找到bind-address注释此行或者改为bind-address = 0.0.0.0

2、 执行mysql -u root -p

进入mysql命令行,选择mysql数据库:use mysql;

update user set host='%' where user='root';

flush privileges;

3、 查看mysql服务认证插件:select user,plugin from mysql. user;

若root对应plugin不是mysql_native_password,则执行:

ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '密码';

修改root密码的同时使用mysql_native_password对密码进行编码

4、 MySQL5.7及以上版本mysql.user没有password字段改成authentication_string

4.1创建用户:

CREATE USER 'unimat'@'%' IDENTIFIED BY 'password';

4.2、授权

GRANT ALL privileges on mq.* to 'unimat'@'%';

flush privileges;

4.3、查询权限:

show grants for 'unimat'@'%';

 

 

PS:GRANT USAGE:mysql usage权限就是空权限,默认create user的权限,只能连库,啥也不能干

4.4、关闭mysql严格模式

修改配置文件:vi /etc/mysql/mysql.conf.d/mysql.cnf

加入此行:sql-mode=NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTIO

 

 

 

 

 

 

 

 

 

 

 

posted @ 2020-08-14 10:51  ZL_WJZF  阅读(526)  评论(0编辑  收藏  举报