服务器搭建

2019独角兽企业重金招聘Python工程师标准>>> hot3.png

最近弄了个阿里云的服务器,想在上面搞点东西,故要搭建一套环境。登录linux,在终端输入 uname -a 即列出linux的内核版本号。(服务器网址:http://101.132.235.56)

1. linux的yum命令

首先我们要安装一些软件,下面就先介绍下 linux的yum 命令

yum常用命令

  • 1.列出所有可更新的软件清单命令:yum check-update
  • 2.更新所有软件命令:yum update
  • 3.仅安装指定的软件命令:yum install <package_name>
  • 4.仅更新指定的软件命令:yum update <package_name>
  • 5.列出所有可安裝的软件清单命令:yum list
  • 6.删除软件包命令:yum remove <package_name>
  • 7.查找软件包 命令:yum search <keyword>
  • 8.清除缓存命令:
    • yum clean packages: 清除缓存目录下的软件包
    • yum clean headers: 清除缓存目录下的 headers
    • yum clean oldheaders: 清除缓存目录下旧的 headers
    • yum clean, yum clean all (= yum clean packages; yum clean oldheaders) :清除缓存目录下的软件包及旧的headers

 修改yum源

在安装完CentOS后一般需要修改yum源,才能够在安装更新rpm包时获得比较理想的速度。国内比较快的有163源、sohu源。这里以163源为例子。

1、打开centos的yum文件夹

输入命令cd  /etc/yum.repos.d/

2、用wget下载repo文件

输入命令wget  http://mirrors.aliyun.com/repo/Centos-7.repo  

(或者wget http://mirrors.163.com/.help/CentOS6-Base-163.repo)

如果wget命令不生效,说明还没有安装wget工具,输入yum -y install wget 回车进行安装。

当前目录是/etc/yum.repos.d/,刚刚下载的Centos-7.repo也在这个目录上

3、备份系统原来的repo文件

mv  CentOs-Base.repo CentOs-Base.repo.bak

即是重命名 CentOs-Base.repo -> CentOs-Base.repo.bak

4、替换系统原理的repo文件

mv Centos-7.repo CentOs-Base.repo

即是重命名 Centos-7.repo -> CentOs-Base.repo

5、执行yum源更新命令

yum clean all

yum makecache

yum update

依次执行上述三条命令即配置完毕。

最后就可以使用yum 了。

 

Linux磁盘管理常用三个命令为df、du和fdisk。

  • df:列出文件系统的整体磁盘使用量
  • du:检查磁盘空间使用量
  • fdisk:用于磁盘分区

    参考文档:http://www.runoob.com/linux/linux-tutorial.html

  yum install unzip 下载unzip

原因:缺少libaio库文件 

解决方法:yum install libaio* -y

 

给大家推荐一个上传的很好的工具:

--yum install lrzsz

按照提示输入y即可安装完成

--rz    //按回车即可上传本地文件

144246_H3hM_2950677.png

删除某些文件的命令:(慎用

find / -name mysql rm -rf 上边查找到的路径,多个路径用空格隔开

#或者下边一条命令即可  find / -name mysql*|xargs rm -rf

 

2. 安装jdk

1、检查一下系统中的jdk版本

[root@localhost software]# java -version

2、检测jdk安装包

[root@localhost software]# rpm -qa | grep java

3、卸载openjdk

[root@localhost jvm]# yum remove *openjdk*

之后再次输入rpm -qa | grep java 查看卸载情况:

[root@localhost software]# rpm -qa | grep java

4、安装新的jdk

首先到jdk官网上下载你想要的jdk版本(http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html),下载完成之后将需要安装的jdk安装包放到Linux系统指定的文件夹下,并且命令进入该文件夹下:

144925_xoH4_2950677.png

点击下载,

145043_Yacw_2950677.png

在你想安装的目录下运行(我的目录是:/opt/soft/softinstallpackage/jdk) 下运行命令:

wget http://download.oracle.com/otn-pub/java/jdk/8u171-b11/512cd62ec5174c3487ac17c61aaa89e8/jdk-8u171-linux-x64.tar.gz?AuthParam=1527835935_1097e7aacf561830df21ea69c588fd4d

解压 jdk-8u131-linux-x64.tar.gz安装包 (下载后的解压包改名为:jdk-8u171-linux-x64.tar.gz ),运行命令:

tar -zxvf jdk-8u171-linux-x64.tar.gz

5、设置环境变量

(1) 在/etc/profile文件末尾中添加以下环境变量:(我上面的JDK目录是jdk1.8.0_171,所以下面JAVA_HOME中也是这个)

[root@localhost software]# vim /etc/profile
export JAVA_HOME=/usr/java/jdk1.8.0_171
export PATH=$JAVA_HOME/bin:$PATH
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar

151528_4qXe_2950677.png

(2)让/etc/profile文件修改后立即生效,有两种方法:

方法1:
让/etc/profile文件修改后立即生效 ,可以使用如下命令:
# .  /etc/profile
注意: . 和 /etc/profile 之间有空格

方法2:
让/etc/profile文件修改后立即生效 ,可以使用如下命令:
# source /etc/profile

注:如果依然不生效可以尝试重启系统

查看是否成功:运行命令 java -version  

出现jdk的版本表示成功了

151943_bOYr_2950677.png

参考文档:https://www.cnblogs.com/Dylansuns/p/6974272.html

 

3. 安装Nginx

在目录 /opt/soft/softinstallpackage/nginx下执行如下命令:

安装openssl库。

 yum install -y openssl openssl-devel

 

 需要安装gcc:yum install gcc-c++    

   安装 PCRE    yum install -y pcre pcre-devel

 

  安装zlib库   yum install -y zlib zlib-devel

下载nginx:    wget http://nginx.org/download/nginx-1.13.0.tar.gz

装在 /usr/local/  下

解压  tar -zxvf nginx-1.13.0.tar.gz

 

进入目录 运行 ./configure  产生makefile

 此时目录多出了 makefile

编译make

安装:make install

完成后 local 目录下 多了个 nginx

启动 nginx

进入sbin 目录  执行./nginx

查看启动结果

在页面上访问 http://101.132.235.56/   nginx 默认端口为80  

关闭 ./nginx  -s  stop

./nginx   -s  reload  可以在启动后重新加载配置文件 适合于在启动会修改了配置文件

 

 

参考文档:https://www.cnblogs.com/yuanjava/archive/2017/05/13/6850764.html

https://www.linuxidc.com/Linux/2016-08/134110.htm

4. 安装tomcat

 我安装的是 tomcat8.5.31版本(https://tomcat.apache.org/download-80.cgi)

161420_jIwC_2950677.png

在目录 /opt/soft/softinstallpackage/tomcat 下执行命令

wget http://mirrors.shu.edu.cn/apache/tomcat/tomcat-8/v8.5.31/bin/apache-tomcat-8.5.31.tar.gz

解压 :tar -zvxf apache-tomcat-8.5.31.tar.gz 

161527_sB4Z_2950677.png

将tomcat中的/bin/catalina.sh 脚本 拷贝到init.d下,这样是为了比较方面的启动tomcat,在任务地方通过service tomcat start 就可以启动tomcat

cp -p /usr/local/tomcat/bin/catalina.sh /etc/init.d/tomcat

vim /etc/init.d/tomcat
在第二行加入以下内容:

# chkconfig: 112 63 37
# description: tomcat server init script
# Source Function Library
. /etc/init.d/functions

JAVA_HOME=你的jdk路径
CATALINA_HOME=tomcat安装路径

170442_BJ1s_2950677.png

保存文件后执行以下操作

chmod 755 /etc/init.d/tomcat
chkconfig --add tomcat
chkconfig tomcat on

启动tomcat:

service tomcat start

可在浏览器输入http://你的ip:8080,tomcat默认端口是8080,如果成功启动的话会看到tomcat主界面

(一般我们将项目部署到tomcat中后即将war包拷贝到tomcat的webapps 目录下,启动tomcat就可以自动解压访问项目了,但是一般我们会希望去掉项目名访问项目,故可以编辑 conf/service.xml 文件,在

 

后面增加 <Host ...>后面

<Context path="/" docBase="/opt/tomcat7/webapps/jeeplus/" reloadable="true" crossContext="true" /> )

b699af43cad35199e43c90501948f041c99.jpg

 

 

netstat -naop|grep 25123

5. mysql安装

方式一:

0、卸载老版本MySQL

查找并删除mysql有关的文件

find / -name mysql
rm -rf 上边查找到的路径,多个路径用空格隔开
#或者下边一条命令即可
find / -name mysql|xargs rm -rf

提前准备好文件mysql57-community-release-el7-11.noarch.rpm点击下载

一步步输入下面三条命令,即安装好MySQL

--rpm -ivh mysql57-community-release-el7-11.noarch.rpm

--yum install mysql-server

--yum install mysql-devel

配置

--systemctl start mysqld    //打开MySQL服务

--systemctl status mysqld   //可以查看MySQL服务是否正常打开(可省略

160030_PufF_2950677.png

由图可见MySQL已经正常启动

--vi /var/log/mysql.log     //查看并编辑MySQL的配置文件(可省略

--grep "password" /var/log/mysqld.log    //用这条命令可快速找到MySQL的初始密码,方便你登录后修改

--mysql –uroot –p    //然后输入密码

--set password for'root'@'localhost'=password('newpasswd');    //修改MySQL数据库密码(这里要注意的是新密码必须是大写开头,包含大、小写字母,特殊符号等)

161453_TP8M_2950677.png

一般我们一般不要求密码那么复杂,故我们可以通过如下设置:

必须修改两个全局参数:

首先,修改validate_password_policy参数的值

mysql> set global validate_password_policy=0;
Query OK, 0 rows affected (0.00 sec)
mysql> set global validate_password_length=1;
Query OK, 0 rows affected (0.00 sec)
mysql> set global validate_password_mixed_case_count=2;
Query OK, 0 rows affected (0.00 sec)

这样我们就可以重新设置我们的简历密码了

--set password for'root'@'localhost'=password('123456');  

配置连接

比如我想用本机上的SQLyog连接刚才配置的阿里云服务器上的MySQL数据库,还需要这一步:

-- grant all on *.* to root@'%' identified by'123456' with grant option;    //[root]是远程连接的【用户名】,[123456]是远程连接的【密码】

162617_1HXG_2950677.png

编码

mysql配置文件为/etc/my.cnf

最后加上编码配置

[mysql]
default-character-set =utf8

这里的字符编码必须和/usr/share/mysql/charsets/Index.xml中一致。

 

方式二:

1、下载

    下载地址:http://dev.mysql.com/downloads/mysql/5.6.html#downloads

    下载版本:我这里选择的5.6.33,通用版,linux下64位也可以直接复制64位的下载地址,通过命令下载:wget http://dev.mysql.com/get/Downloads/MySQL-5.6/mysql-5.6.33-linux-glibc2.5-x86_64.tar.gz

find / -name mysql rm -rf 上边查找到的路径,多个路径用空格隔开

#或者下边一条命令即可 find / -name mysql|xargs rm -rf

2. 解压包并重新命名

142210_8l3a_2950677.png

或者

cp mysql-5.6.33-linux-glibc2.5-x86_64 /usr/local/mysql -r

3、添加mysql用户组和mysql用户

先检查是否有mysql用户组和mysql用户

groups mysql

Paste_Image.png

若无,则添加;

groupadd mysql
useradd -r -g mysql mysql

Paste_Image.png


若有,则跳过;

4、进入mysql目录更改权限

cd mysql/
chown -R mysql:mysql ./

5、执行安装脚本

./scripts/mysql_install_db --user=mysql

如果出现问题 

FATAL ERROR: please install the following Perl modules before executing ./scripts/mysql_install_db:

Data::Dumper

解决方法是安装autoconf库

执行命令:yum -y install autoconf

安装完成之后继续执行安装mysql的命令:./scripts/mysql_install_db --user=mysql

问题解决。

安装完之后修改当前目录拥有者为root用户,修改data目录拥有者为mysql

chown -R root:root ./
chown -R mysql:mysql data

6、更改mysql密码

上一步安装脚本执行输出的日志中告诉我们如何更改密码了

142724_mdie_2950677.png

执行 ./bin/mysqladmin -u root password 'root' 改密码发现如下错误:

142847_dT4f_2950677.png

因为这时还没有启动mysql

启动方法如下:

./support-files/mysql.server start

如果MySQL启动报错,则可能是已经存在MySQL进程,杀掉即可(再执行上面的命令启动)

ps aux|grep mysql
kill -9 上边的进程号
#或者下边一条命令即可杀掉所有MySQL进程
ps aux|grep mysql|awk '{print $2}'|xargs kill -9

 

MySQL启动之后再执行如下命令更改密码:

./bin/mysqladmin -u root -h localhost.localdomain password 'root'

密码更改后即可登录MySQL

./bin/mysql -h127.0.0.1 -uroot -proot

登录之后将其他用户的密码也可改为root

update mysql.user set password=password('root') where user='root';
flush privileges;

(错误:

root@DB-02 ~]# mysql -u root
-bash: mysql: command not found

原因:这是由于系统默认会查找/usr/bin下的命令,如果这个命令不在这个目录下,当然会找不到命令,我们需要做的就是映射一个链接到/usr/bin目录下,相当于建立一个链接文件。
首先得知道mysql命令或mysqladmin命令的完整路径,比如mysql的路径是:/usr/local/mysql/bin/mysql,我们则可以这样执行命令:

# ln -s /usr/local/mysql/bin/mysql /usr/bin

7、增加远程登录权限

上一步即可本地登录,但远程登录会报错

需要本地登陆MySQL后执行如下命令

grant all privileges on *.* to root@'%' identified by 'root';
flush privileges;

150618_gvVm_2950677.png

 

8、将MySQL加入Service系统服务

mysql设置开机启动

1、cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld   将服务文件拷贝到init.d下,并重命名为mysqld

2、chmod +x /etc/init.d/mysqld    赋予可执行权限

3、chkconfig --add mysqld        添加服务

4、chkconfig --list             显示服务列表

cp support-files/mysql.server /etc/init.d/mysqld
chkconfig --add mysqld
chkconfig mysqld on
service mysqld restartservice mysqld status

154139_2K1X_2950677.png

如果看到mysql的服务,并且3,4,5都是on的话则成功,如果是off,则键入

chkconfig --level 345 mysql on

5、reboot重启电脑

6、netstat -na | grep 3306,如果看到有监听说明服务启动了

154341_3n2G_2950677.png

 

 

 

 

150216_y2xt_2950677.png

 

 

6. 防火墙

 

通过systemctl status firewalld查看firewalld状态

通过systemctl start firewalld开启防火墙,没有任何提示即开启成功

再次通过systemctl status firewalld查看firewalld状态,显示running即已开启了

如果要关闭防火墙设置,可能通过systemctl stop firewalld这条指令来关闭该功能

154010_vMB0_2950677.png

 

 

 

 

参考文档:https://www.cnblogs.com/jimmy-muyuan/category/773052.html

 

转载于:https://my.oschina.net/newdeng/blog/1822755

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/451589.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

mybatis内部类映射写法

前些天发现了一个巨牛的人工智能学习网站&#xff0c;通俗易懂&#xff0c;风趣幽默&#xff0c;忍不住分享一下给大家。点击跳转到教程。 1. B类是A类中的内部类。 2.  映射写法&#xff1a; com.XXX.A$B , 注意A类和B类之间用 $ 表示内外关系&#xff0c;而不是常用的 …

Linux bash总结(一) 基础部分(适合初学者学习和非初学者参考)

第一部分 bash简介 —— 对bash进行简要介绍 第二部分 bash示例和书写流程 —— 以一个简单的bash为例&#xff0c;说明书写、执行bash的流程 第三部分 bash基础语法 —— 本章内容比较多&#xff0c;主要介绍if...else...条件判断&#xff0c;for循环等等。对于有编…

解决报错:java.util.UnknownFormatConversionException: Conversion = ‘p‘

前些天发现了一个巨牛的人工智能学习网站&#xff0c;通俗易懂&#xff0c;风趣幽默&#xff0c;忍不住分享一下给大家。点击跳转到教程。 1. ssm框架下 报错如题 2. 错误原因&#xff1a;我的情况是&#xff0c;代码中实体属性映射书写和数据库字段名字不一致。 选中位置数据…

TOAD连接Oracle数据库失败:OCI_INVALID_HANDLE解决

前些天发现了一个巨牛的人工智能学习网站&#xff0c;通俗易懂&#xff0c;风趣幽默&#xff0c;忍不住分享一下给大家。点击跳转到教程。 1. toad 连接Oracle数据库连接失败如图&#xff1a; 2. 导致这个情况的前因&#xff1a;toad运行情况下&#xff0c;突然断电。 3. 解决…

python-访问者模式

源码地址:https://github.com/weilanhanf/PythonDesignPatterns 说明&#xff1a; 访问者模式的基本想法是&#xff0c;软件系统中拥有一个由许多对象构成的、比较稳定的对象结构&#xff0c;这些对象的类都拥有一个 accept 方法用来接受访问者对象的访问。访问者是一个接口&am…

git commit -m和git commit -am

字面解释的话&#xff0c;git commit -m用于提交暂存区的文件&#xff1b;git commit -am用于提交跟踪过的文件 要理解它们的区别&#xff0c;首先要明白git的文件状态变化周期&#xff0c;如下图所示 工作目录下面的所有文件都不外乎这两种状态&#xff1a;已跟踪或未跟踪。已…

磁盘结构简介

这里讲的主要是网上所谓的老式磁盘&#xff0c;它是由一个个盘片组成的&#xff0c;我们先从个盘片结构讲起。如图1所示&#xff0c;图中的一圈圈灰色同心圆为一条条磁道&#xff0c;从圆心向外画直线&#xff0c;可以将磁道划分为若干个弧段&#xff0c;每个磁道上一个弧段被称…

end to end testing

概念 https://www.softwaretestinghelp.com/what-is-end-to-end-testing/ What is “End to End Testing”? Term “End to End testing” is defined as a testing method which determines whether the performance of an application is as per the requirement or not. It…

Linux目录架构详解

Linux和Windows操作系统的显著区别之一就是目录架构的不同。Linux操作系统的目录架构遵循文件系统层级结构标准。不知你是否使用ls命令浏览过Linux的根目录“/”&#xff0c;亲爱的读者&#xff0c;您都了解这些目录的含义吗&#xff1f; ls -l / 遍历文件系统&#xff08;点击…

Linux的学习:

查看端口&#xff1a; netstat -anop | grep 80 netstat -ntlp 先看看不带n的 再看看带n的 我们发现在local address 即主机地址这一栏中&#xff0c;如果没有带n选项&#xff0c;会将套接字所对应的域名解析出来&#xff0c;如果加上n选项&#xff0c;那么就不会显示&#xff…

Unix 多进程编程

一.多进程程序的特点由于UNIX系统是分时多用户系统, CPU按时间片分配给各个用户使用, 而在实质上应该说CPU按时间片分配给各个进程使用, 每个进程都有自己的运行环境以使得在CPU做进程切换时不会"忘记"该进程已计算了一半的"半成品". 以DOS的概念来说, 进程…

IT巨头互掐云存储:Dropbox能否一马当先

随着北京时间4月25日Google Drive横空出世&#xff0c;微软也迫不及待的发布了SkyDrive的大量更新。各大巨头进军云存储市场&#xff0c;激烈角逐的意向已经昭然可见。网友针对此事纷纷发表热议。苹果、微软、谷歌三巨头加上一个Dropbox各出各的云存储高招&#xff1a;微软SkyD…

Spring集成redis(Spring Data Redis)

2019独角兽企业重金招聘Python工程师标准>>> 转载地址&#xff1a;http://blog.csdn.net/zhu_tianwei/article/details/44923001 Spring-data-redis是spring大家族的一部分&#xff0c;提供了在srping应用中通过简单的配置访问redis服务&#xff0c;对reids底层开发…

PHP环境搭建和Apache HTTP服务器配置

所需软件: 需要准备Apache HTTP 服务器: http://httpd.apache.org/download.cgi PHP环境下载:http://www.php.net/downloads.php Apache HTTP服务器安装: 由于最新的 Apache 已经不提供 Windows 的安装版本了&#xff0c;所以我们这里使用的是解压版。 下载地址&#xff1a;htt…

ElasticSearch安装过程中遇到的一些问题

问题1&#xff1a; 安装Elasticsearch5.X版本&#xff0c;不修改默认配置的情况下&#xff0c;一切还好&#xff0c;能够正常启动。但我必须开通外网访问。然后报错了&#xff0c;报错信息如下&#xff1a; ERROR: max file descriptors [1024] for elasticsearch process like…

进程的五种状态和线程的六种状态

参考文章&#xff1a; 进程的状态转换和线程的状态转换

Nexus 安装(Linux 环境)

一、环境准备 安装 JDK 1.7 二、下载 Nexus 压缩文件 下载地址&#xff1a;http://www.sonatype.org/nexus/archived/ 三、上传压缩文件 四、解压缩文件 五、配置环境变量 1、临时配置 mvn clean package -Dmaven.test.skiptrue -Dmaven.javadoc.skiptrue命令&#xff1a;expor…

java.util.UnknownFormatConversionException: Conversion = ‘,‘ 解决

前些天发现了一个巨牛的人工智能学习网站&#xff0c;通俗易懂&#xff0c;风趣幽默&#xff0c;忍不住分享一下给大家。点击跳转到教程。 1. 报错&#xff1a; 2. 原因&#xff1a; 出错代码&#xff1a; if(info.getRiceCount() < 0){ ... } 事实上 对象的riceCoun属性值…

Map转为String

Map转为String 最近在做redis缓存时&#xff0c;需要将一个Map<String,Object>的对象转换为String对象存入redis&#xff0c;用的时候需从redis中取出来后并转为Map<String,Objcet>对象。 之前的做法直接就是Map对象的toString()存入redis,后面取出是就是用再转换为…

PowerBI分析Exchange服务器IIS运行日志

只要是基于Windows Server 的IIS来提供Web服务的应用&#xff0c;其实都可以对IIS的日志W3C进行分析&#xff0c;这样可以快速的了解整个web站点的运行情况&#xff0c;特别是对一些请求页面响应时间有要要求的&#xff0c;都可以从这些日志中分析问题出在哪&#xff0c;下面我…