(Linux环境部署JDK&Mysql)
Posted 张飞飞啦啦
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了(Linux环境部署JDK&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之前,给虚拟机保存一个快照,一旦安装失败,可以恢复快照,重新安装!
- 解压mysql安装包
#将MySQL的安装包提前上传到Linux的/export/software目录 cd /export/software tar -zxvf mysql-5.7.29-linux-glibc2.12-x86_64.tar.gz -C /export/server/ |
- 重命名
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版本信息。
。
三、安装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
如何在自己本机上连接上服务器上服务器呢?
上两张图,大家应该都能看明白吧。
最后,大家也开看到了格式并不统一,因为我自己部署的时候,,参考了很多博客,走了很多弯路,这些都是我按照别人方法做的没有问题的。
希望大家也早早配好。