之前接触到的都是window server的服务器,今天好奇就跑了下Linux下Javaweb环境的搭建,撸了个腾讯云,操作系统Centos 7.4 64位
JDK的下载安装并配置环境变量
参考https://blog.csdn.net/x541211190/article/details/74786393
Tomcat 服务器的安装
先去tomcat的官网下载tomcat到本地
QQ截图20180704165532.png
下载到本地后,使用winSCP工具上传到Cente OS的安装目录下,LZ这里直接选择了home目录(你也可以直接在linux系统下下载解压)
然后使用命令解压
tar zxvf 文件名.tar.gz
遇到第一个坑
root@VM_0_9_centos Downloads]# ls
jdk-10.0.1_linux-x64_bin.tar.gz
[root@VM_0_9_centos Downloads]# tar zxvf jdk-10.0.1_linux-x64_bin.tar.gz
gzip: stdin: not in gzip format
tar: Child returned status 1
[root@VM_0_9_centos Downloads]#
找到该文件,使用file命令查看文件类型,这里LZ用了cd / 回到根目录后,找了很久才找到该文件,该文件在用户目录下,需要使用
cd ~
进行切换
QQ图片20180704211401.png
这里显示是一个HMTL类型的文件,说明没有下载对,删除,这里要说下下linux的删除命令了
rm -R 目录名
使用上面的命令,如果目录下面有文件的话,下面的每一个文件的删除都会询问你确认删除吗是否删除
目录 "homework"? y
显然是不对的,向下删除,包括子文件里的内容,这里要熟悉常用的Linux命令删除文件及目录,删除包含文件及文件夹的目录。直接用 rm -rf 目录名,
rm -rf 目录名字
-r 就是向下递归,不管有多少级目录,一并删除
-f 就是直接强行删除,不作任何提示的意思
注意 :m -rf的时候一定要格外小心,linux没有回收站的,一旦删除不可恢复.
重新下载了上传。你也可以直接在linux上下载。
LZ下载的是1.7的,再次解压,ls查看下
显示是这样才是对的
aa.png
然后我们的tomcat就有了,启动tomcat
到我们的bin目录下ls查看下有那些文件
bb.png
了解tomcat的人都知道这里面有启动和关闭tomcat的文件
运行
./startup.sh 启动tomcat
然后这里又踩了一个坑。没有启动成功,报错说,配置的JAVA_HOME里面找到对应版本的jdk
查看有那些可用的JDK,并将JAVA_HOME里面的JDK版本修改正确
重新启动,不行就再重新启动下服务器
Tomcat就这样跑起来了。可以放一个html文件上去,并尝试修改默认的端口。
Mysql安装
在Home目录执行mysql的安装
http://www.runoob.com/mysql/mysql-install.html
wget https://dev.mysql.com/get/mysql57-community-release-el7-9.noarch.rpm
rpm -ivh mysql57-community-release-el7-9.noarch.rpm
yum install mysql-server
Mysql由于有几百M吧,IM带宽的主机下载125k左右,下载有点慢,耐心等待
初始化 MySQL:
mysqld --initialize
启动 MySQL:
systemctl start mysqld
这里又遇到一个坑,启动失败报错如下
查看var/lib/logs/msyqld.log的日志截图如下
法一:打开mysql安装目录的data文件夹,删除以下2个文件:ib_logfile0和ib_logfile1,
法二:
文件没有写入权限。
不想麻烦的话 直接 chmod -R 777 ${mysql路径}
要是有安全考虑的话就 chmod 777 $ (find / -name "ibdata1")
注意mysql的安装路径,我们的Mysql使用上面命令后安装在哪里呢,百度下,LZ这里是在var/lib/mysql这个路径下,你在安装的时候就需要注意这个问题了
采用法二解决了这个问题。顺利的启动了mysql
查看 MySQL 运行状态:
systemctl status mysqld
显示是ACTIVE
下面是正常时mysql服务的启动和状态查看
ee.png
连接测试下,使用Navicat for mysql连接数据库,输入IP和用户名后连接不上,额没输入密码,密码是多少呢 ???
没有密码吗? 还是root?
试了下都不是,于是又去百度下。
默认有给了个随机密码,在var/log/mysqld.log里面可以看到,
cc.png
在Navicat输入后还是连接不上, 显示
1130-host . is not allowed to connect to this MySql server,
重置密码
在命令运行命令
mysql -u root -p
set password = password('eugene1024');
exit;
可以用新密码在服务器的命令行登陆了mysql了,但Navicat连接报错依旧,到mysqld.log查看报错的日志
没有权限去连接主机。解决:赋予所有主机都有权限。
mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' WITH GRANT OPTION /
/赋予任何主机访问数据的权限
mysql> FLUSH PRIVILEGES //修改生效
mysql> EXIT //退出MySQL服务器
尝试了一下后没有生效,或许应该重启下Mysql服务,我直接重启了主机。
连上了数据库
到现在配好了服务器和数据库,就可以上传项目了。
对于Javaweb环境,linux服务器和windows服务器搭建的比较
windows的程序安装是可视化的,程序安装点击下一步,下一步。linux是命令行操作。l但配置完成后使用都是差不多的
代码文件可以使用ftp工具上传
数据库管理都可以借用Navicat等工具。
Linux的使用
日常的使用需要熟悉Linux的一些常用命令,比如文件的下载、安装、解压,删除,创建vi编辑等,多实际操作。
不足之处,欢迎指正
网友评论