(Linux环境部署JDK&Mysql)

Posted 张飞飞啦啦

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了(Linux环境部署JDK&Mysql)相关的知识,希望对你有一定的参考价值。

目录

Linux基础命令

文件查找命令

压缩和解压命令tar

Linux权限命令(用户和组)

 文件添加、删除权限

 文件夹 添加、删除权限

网络

 服务

磁盘管理命令

 其他命令

时间和日期  

ln命令

clear命令

关机重启

vi编辑器使用

底行模式常用命令

Linux高级命令

Linux基础软件安装

安装Mysql


 有时候会碰到linux输入ifconfig只有下面的没有ip地址我们需要将下面这两行命令运行

如果还不行就重启一下

service NetworkManager stop
chkconfig NetworkManager off

Linux基础命令

文件查找命令

2.7.1.	find指令
用于查找符合条件的文件
示例:
find / -name 'ins*' #查找/目录下以文件名ins开头的文件 
find / -type f -size +100M #查找/目录下文件大小大于100M的文件
2.7.2.	grep命令
grep命令可以对文件进行文本查询
grep lang anaconda-ks.cfg #在文件中查找lang

压缩和解压命令tar

参数

解释

-c

创建一个新tar文件

-v

显示运行过程的信息

-f

指定文件名

-z

调用gzip压缩命令进行压缩

-x

解开tar文件

解压
tar -zxvf 压缩文件 [-C] [指定解压目录]
示例:
tar -zxvf redis-3.2.8.tar.gz  #将文件解压到当前目录
tar -xvf redis-3.2.8.tar.gz  #将文件解压到当前目录
tar -zxvf redis-3.2.8.tar.gz -C /root/dir #将文件解压到指定目录
压缩
tar -c[z]vf 压缩文件 目录
tar -cvf  test.tar /root/test     #打包
tar -czvf test.tar.gz /root/test  #打包并压缩

Linux权限命令(用户和组)

所属用户:文件的创建者 (u、权限代表字母)

所属用户组:和所属用户在同一组的用户 (g、权限代表字母)

其他用户:既不是所属用户,也不熟所属用户组 (o、权限代表字母)

r读 
w写
x执行

 这个举例

 

-:第一个是文件类型(后面的三个字符,为一个分割)

rw-:具有读写没有执行功能(一是所属用户、二是所属用户组、三是其他用户))

 r--:具有读没有写入和执行功能(一是所属用户、二是所属用户组、三是其他用户))

 文件添加、删除权限

--加单个权限反之亦然-权限 =    则可以去除全部权限
chmod u+ (zwx) 文件名
chmod g+ (zwx) 文件名
chmod o+ (zwx) 文件名
--直接赋权限
chmod u=zwx 文件名
chmod g=zwx 文件名
chmod o=zwx 文件名


第二种方式 (421) 分别对应  z w x
--赋值全部权限
chmod 777 文件名 
--取消全部的权限
chmod 000 文件名 

 文件夹 添加、删除权限

--赋值全部权限
chmod 777 文件夹名 

--将文件夹及子文件所有的权限都更改 -R
chmod -R 777 文件夹名 

网络

查看网络端口
netstat -nltp | grep 端口号
--所有的
netstat -anp | grep 端口号

 

 服务

systemctl start 服务名          开启服务
systemctl stop  服务名           关闭服务
          status 服务名         显示状态
          enable 服务名       设置开机自启
          disable 服务名       关闭开机自启
         restart  服务名        重启服务

防火墙操作

systemctl start firewalld.service         开启防火墙服务
systemctl stop  firewalld.service          关闭防火墙服务
          status firewalld.service         显示防火墙状态

磁盘管理命令

命令

作用

df -h

disk free 显示磁盘剩余空间

du -h [目录名]

disk usage 显示目录下的目录大小

free -h

查看内存使用率

 其他命令

时间和日期  

命令

作用

date

查看系统时间(默认)

date +"%Y-%m-%d %H:%M:%S"

查看系统时间(指定格式)

date -s "时间字符串"

设置系统时间

实例:

[root@node1 export]# date

Wed Jul 31 07:20:31 CST 2019

[root@node1 export]# date +"%Y-%m-%d %H:%M:%S"

2019-07-31 07:20:49

[root@node1 export]# date -s '2019-07-31 20:21:49'

Wed Jul 31 20:21:49 CST 2019

[root@node1 export]# date +"%Y-%m-%d %H:%M:%S"   

2019-07-31 20:21:52

ln命令

ln命令可以用来创建软连接,类似于创建快捷方式

命令格式:

 ln [参数][源文件或目录][目标文件或目录]

实例:

​​​​​​​clear命令

清屏命令,还可以使用快捷方式:ctrl + l

​​​​​​​关机重启

reboot : 重新启动

shutdown -h now : 马上关机(断电关机)

halt : 立刻关机(centos) (不断电关机)

vi编辑器使用

vi a.txt #直接打开文件

vim a.txt #vim是vi的增强版

vim a.txt +10 #直接打开文件,并定位到第10行

Vi编辑器三种模式:

1. 命令行模式

   - 打开文件首先进入命令模式, 是使用vi的入口

   - 通过 命令 对文件进行常规的编辑操作, 例如 定位 翻页 复制 粘贴 删除

   - 在其他图形编辑器下, 通过 快捷键 或者 鼠标 实现的操作, 都在 命令模式 下实现

2. 末行模式 -- 执行 保存 退出等操作

   - 要退出 vi 返回到控制台, 需要在莫行模式下输入命令

   - 末行模式 是 vi 的出口

3. 编辑模式 -- 正常的编辑文字

命令行模式常用命令

命令

功能

o

在当前行后面插入一空行

O

在当前行前面插入一空行

dd

删除光标所在行

ndd

从光标位置向下连续删除 n 行

yy

复制光标所在行

nyy

从光标位置向下连续复制n行

p

粘贴

u

撤销上一次命令

gg

回到文件顶部

G

回到文件末尾

/str

查找str

底行模式常用命令

命令

功能

:w 文件

另存为

:w

保存(ctrl + s)

:q

退出, 如果没有保存,不允许退出

:q!

强行退出, 不保存退出

:wq

保存并退出

:x

保存并退出

shift + z + z

保存并退出

:set nu

设置行号   

:set nonu

取消行号   

:%s/旧文本/新文本

 文本替换

:nohl

取消高亮

Linux高级命令

重定向 > (覆盖)

Linux 允许将命令执行结果重定向到一个文件,本应显示在终端上的内容保存到指定文件中。如:ls >test.txt ( test.txt 如果不存在,则创建,存在则覆盖其内容 )。

ll  / > test.txt

重定向 >>(追究)

>>这个是将输出内容追加到目标文件中。如果文件不存在,就创建文件;如果文件存在,则将新的内容追加

cat 1.txt >> test.txt 

到那个文件的末尾,该文件中的原有内容不受影响。

Linux基础软件安装

接下来,我们来学习如何在linux上安装JDK和mysql,安装之前需要在Linux上提前创建三个目录:

mkdir -p /export/software  #软件包存放目录

mkdir -p /export/server    #安装目录

mkdir -p /export/data      #数据存放目录

Java的JDK 打gz压缩包

安装JDK

后续的很多大数据框架都需要依赖Java环境,所以需要安装给虚拟机安装JDK

1、在虚拟机上查看是否自带有openjdk,如果有的话则卸载,没有的话直接做第二步

rpm -qa | grep openjdk

rpm -e java-1.7.0-openjdk-headless-1.7.0.221-2.6.18.1.el7.x86_64 java-1.7.0-openjdk-1.7.0.221-2.6.18.1.el7.x86_64 --nodeps

2、在node1机上传安装包并解压

上传jdk到node1的/export/software路径下去并解压,在这里使用rz命令上传

tar -zxvf jdk-8u241-linux-x64.tar.gz -C /export/server/

4、配置环境变量

vim /etc/profile

添加如下内容

export JAVA_HOME=/export/server/jdk1.8.0_241

export PATH=:$JAVA_HOME/bin:$PATH

5、修改完成之后记得执行source /etc/profile使配置生效

source /etc/profile

6、测试

在node1主机上执行以下指令,测试是否安装成功:

java -version

安装Mysql

注意!!!!!,在安装Mysql之前,给虚拟机保存一个快照,一旦安装失败,可以恢复快照,重新安装!

  1. 解压mysql安装包

#将MySQL的安装包提前上传到Linux的/export/software目录

cd /export/software

tar  -zxvf mysql-5.7.29-linux-glibc2.12-x86_64.tar.gz -C /export/server/

  1. 重命名 

cd /export/server

mv mysql-5.7.29-linux-glibc2.12-x86_64  mysql-5.7.29

3、添加用户组与用户

groupadd mysql

useradd -r -g mysql mysql

4、修改目录权限

chown -R mysql:mysql /export/server/mysql-5.7.29/

5、配置mysql服务

cp /export/server/mysql-5.7.29/support-files/mysql.server /etc/init.d/mysql

6、修改mysql配置文件

1)修改/etc/init.d/mysql文件

vim /etc/init.d/mysql

将该文件的basedir和datadir路径修改为以下内容

basedir=/export/server/mysql-5.7.29

datadir=/export/server/mysql-5.7.29/data

2)修改配置文件my.cnf

修改/etc/my.cnf文件

vim /etc/my.cnf

将/etc/my.cnf原来的内容全部删除,然后将以下内容复制进去.

[client]

       port=3306

       default-character-set=utf8

       [mysqld]

       basedir=/export/server/mysql-5.7.29

       datadir=/export/server/mysql-5.7.29/data

       port=3306

       character-set-server=utf8

default_storage_engine=InnoDB

7、初始化mysql

/export/server/mysql-5.7.29/bin/mysqld --defaults-file=/etc/my.cnf --initialize --user=mysql --basedir=/export/server/mysql-5.7.29 --datadir=/export/server/mysql-5.7.29/data

执行该命令之后,会生成一个mysql的临时密码,这个密码后边要使用。

systemctl status firewalld命令查看当前防火墙的状态。

 

 

 如果防火墙的状态参数是inactive,则防火墙为关闭状态。

 如果防火墙的状态参数是active,则防火墙为开启状态。本示例中防火墙为开启状态,因此需要关闭防火墙。

 如果您想临时关闭防火墙,运行命令systemctl stop firewalld。

然后打开端口号,轻量级服务器比较简单

控制台——进入自己服务器——安全——防火墙——添加规则

 

 

 然后打开3306、8080的端口;

二、安装JDK

1、新建一个目录

mkdir /usr/java

2、解压JDK安装压缩包(本示例中为jdk-8u191-linux-x64.tar.gz)到/usr/java。

chmod +x jdk-8u191-linux-x64.tar.gz
tar xzf jdk-8u191-linux-x64.tar.gz -C /usr/java
 

3、设置环境变量

i  运行vi /etc/profile命令打开/etc/profile。

ii  按下i键进入编辑模式

iii  在/etc/profile文件中添加以下信息

# set java environment
export JAVA_HOME=/usr/java/jdk1.8.0_191
export CLASSPATH=$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib
export PATH=$JAVA_HOME/bin:$PATH

iv  按下Esc 键退出编辑模式,输入:wq 保存并关闭文件。

 

4、运行命令source /etc/profile加载环境变量

 

5、运行命令java -version,查看JDK版本信息。

当显示JDK版本信息时,表示JDK已经安装成功。

 

 

三、安装tomcat 这个我还是走了不少弯路的,中途一直出现内网无法访问、外网也无法访问的情况,这个占了大部分时间。最后重新安装了一边好了

1、进入tomcat解压文件夹下的bin文件夹

   cd /usr/tomcat/apache-tomcat-8.5.37.tar.gz/bin/


2、编辑setclasspath.sh 脚本

   vi setclasspath.sh
添写如下内容

  export JAVA_HOME=/usr/java/jdk1.8.0_201

  export JRE_HOME=/usr/java/jdk1.8.0_201/jre

 

3、启动tomcat:

  ./startup.sh

 

4、现在输入http://云服务器的ip:8080就能访问网站了

 

然后不需要数据库的项目就可以跑了。先把自己的项目以war包的形式导出,放在tomcat中webapp里,一会就会自动生成个文件家。然后就可以被访问了。

 


四、安装数据库,并且在本机native for mysql上远程连接。

这个直接在linux上安装就好。

1 下载并安装MySQL官方的 Yum Repository

[root@localhost ~]# wget -i -c http://dev.mysql.com/get/mysql57-community-release-el7-10.noarch.rpm

  使用上面的命令就直接下载了安装用的Yum Repository,大概25KB的样子,然后就可以直接yum安装了。

[root@localhost ~]# yum -y install mysql57-community-release-el7-10.noarch.rpm

  之后就开始安装MySQL服务器。

[root@localhost ~]# yum -y install mysql-community-server

  这步可能会花些时间,安装完成后就会覆盖掉之前的mariadb。

至此MySQL就安装完成了,然后是对MySQL的一些设置。

2 MySQL数据库设置

  首先启动MySQL

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

  查看MySQL运行状态,运行状态如图:

[root@localhost ~]# systemctl status mysqld.service

  此时MySQL已经开始正常运行,不过要想进入MySQL还得先找出此时root用户的密码,通过如下命令可以在日志文件中找出密码:

[root@localhost ~]# grep "password" /var/log/mysqld.log

  如下命令进入数据库:

[root@localhost ~]# mysql -uroot -p

  输入初始密码,此时不能做任何事情,因为MySQL默认必须修改密码之后才能操作数据库:

mysql> ALTER USER \'root\'@\'localhost\' IDENTIFIED BY \'new password\';

  这里有个问题,新密码设置的时候如果设置的过于简单会报错:

  原因是因为MySQL有密码设置的规范,具体是与validate_password_policy的值有关:

 

  MySQL完整的初始密码规则可以通过如下命令查看:

复制代码
复制代码
复制代码
mysql> SHOW VARIABLES LIKE \'validate_password%\';
+--------------------------------------+-------+
| Variable_name                        | Value |
+--------------------------------------+-------+
| validate_password_check_user_name    | OFF   |
| validate_password_dictionary_file    |       |
| validate_password_length             | 4     |
| validate_password_mixed_case_count   | 1     |
| validate_password_number_count       | 1     |
| validate_password_policy             | LOW   |
| validate_password_special_char_count | 1     |
+--------------------------------------+-------+
7 rows in set (0.01 sec)
复制代码
复制代码
复制代码

  密码的长度是由validate_password_length决定的,而validate_password_length的计算公式是:

validate_password_length = validate_password_number_count + validate_password_special_char_count + (2 * validate_password_mixed_case_count)

 

我的是已经修改过的,初始情况下第一个的值是ON,validate_password_length是8。可以通过如下命令修改:

mysql> set global validate_password_policy=0;
mysql> set global validate_password_length=1;

  设置之后就是我上面查出来的那几个值了,此时密码就可以设置的很简单,例如1234之类的。到此数据库的密码设置就完成了。

  但此时还有一个问题,就是因为安装了Yum Repository,以后每次yum操作都会自动更新,需要把这个卸载掉:

[root@localhost ~]# yum -y remove mysql57-community-release-el7-10.noarch

如何在自己本机上连接上服务器上服务器呢?

上两张图,大家应该都能看明白吧。

 

 

 

 

 最后,大家也开看到了格式并不统一,因为我自己部署的时候,,参考了很多博客,走了很多弯路,这些都是我按照别人方法做的没有问题的。

希望大家也早早配好。

以上是关于(Linux环境部署JDK&Mysql)的主要内容,如果未能解决你的问题,请参考以下文章

测试环境搭建和部署(在Linux环境下搭建jdk+Tomcat+mysql环境和项目包的部署)

linux环境部署 (jdk/tomcat/mysql/redis)

Linux 服务器 Java环境部署系列:搭建RabbitMQ

linux 之体验(JDK7+Tomcat7+MySQL5.5)部署环境

Linux Ubuntu部署web环境及项目tomcat+jdk+mysql

Linux(ubuntu/centos) 部署Java项目 外加安装jdk+tomcat+Mysql