前言
最近公司的电脑由于不明原因老是奔溃, 重装过两次, 在家里也比较喜欢折腾系统, 为了不用每次都度娘谷歌, 记录下来, 一条龙走过. 博主是搞爪哇开发的, 那么以下搭建针对的是爪哇环境开发
JDK以及配置环境变量
通过Apt安装
https://linuxconfig.org/how-to-install-java-on-ubuntu-18-04-bionic-beaver-linux
OpenJDK
JDK8:
1 | sudo apt install openjdk-8-jdk |
JDK9:
1 | sudo apt install openjdk-9-jdk |
JDK11:
1 | sudo apt install openjdk-11-jdk |
OracleJDK
注意: 这个安装可能有点慢, 建议使用代理.
1 | sudo add-apt-repository ppa:webupd8team/java && sudo apt update |
JDK8:
1 | sudo apt install oracle-java8-set-default |
JDK9:
1 | sudo apt install oracle-java9-set-default |
手动安装
安装JDK
安装之前当然是老规矩地下载jdk
: Oracle JDK官方下载
1 | # 把jdk的文件移动到 /usr/local/ 目录下 |
如需更换jdk
, 删除旧版本的软链接, 重新创建软链接指向新版即可
1 | sudo rm -rf jdk |
配置环境变量
- 放到
/usr/local
里面的程序, 建议使用系统变量. - 用户变量
~/.profile
文件是用户的私有配置文件
~/.bashrc
是在bash里面使用的私有配置文件, 优先级在.profile
文件之后 - 系统变量
/etc/profile
文件是系统的公用配置文件
/etc/bash.bashrc
是bash
专用的配置文件, 优先级在profile
文件之后 - 系统变量的配置, 不建议修改前面说到的两个文件, 而是建议在
/etc/profile.d/
目录下, 创建一个.sh
结尾 的文件.
1 | sudo vi /etc/profile.d/jdk.sh |
环境变量的配置内容如下:
设置一个名为
JAVA_HOME
的变量, 并且使用export
命令导出为环境变量, 如果不使用export
, 仅在当前shell
里面有效1
export JAVA_HOME=/usr/local/jdk
PATH
不需要export
, 因为早在其他的地方, 已经export
过了!,\$JAVA_HOME
表示引用前面配置的JAVA_HOME
变量, 分隔符一定是冒号, Windows是分号,最后再引用原来的PATH
的值1
export PATH=$JAVA_HOME/bin:$PATH
配置以后, 可以重新登录让配置生效, 也可以使用
source
临时加载配置文件. 使用source
命令加载的配置, 仅在当前shell
有效, 关闭以后失效.1
source /etc/profile.d/jdk.sh
查看
jdk
是否安装成功, 一下两条命令成功则安装成功1
2java -version
javac -version
Scala
- 下载 官方 SDK
解压到
/usr/local
目录, 并创建软链接为scala
在
/etc/profile.d
目录下创建scala.sh
, 内容如下:
1 | export SCALA_HOME=/usr/local/scala |
- 查看是否安装成功
1 | source /etc/profile.d/scala.sh |
Groovy
- 下载 官方 SDK
- 解压到
/usr/local
目录下, 并创建groovy
软连接 - 在
/etc/profile.d
目录下创建groovy.sh
, 内容如下:
1 | export GROOVY_HOME=/usr/local/groovy |
- 验证:
1 | source /etc/profile.d/groovy.sh |
Golang
安装:
1 | # apt 安装 |
查看版本:
1 | go version |
智能补全:
修改 .zshrc
:
1 | plugins=(... golang) |
环境变量配置:
1 | sudo tee /etc/profile.d/go.sh <<- EOF |
运行Hello world:
1 | go get github.com/golang/example/hello |
之后 hello
命令会下载到 ${HOME}/go/bin
中.
解决 unrecognized import path "golang.org/x/sys/unix
:
1 | mkdir -p $GOPATH/src/golang.org/x/ |
IDE
Eclipse
直接在 Eclipse官方网站 下载相关版本Eclipse
解压1
sudo tar zxvf eclipse-jee-mars-2-linux-gtk-x86_64.tar.gz -C ~/IDE
创建快捷方式
1. 在终端中执行如下命令1
sudo gedit /usr/share/applications/eclipse.desktop
2. 粘贴并保存如下内容(注意更改相应的名字和目录)1
2
3
4
5
6
7
8
9
10[Desktop Entry]
Name=Eclipse Mars.2
Type=Application
Exec=/home/ybd/IDE/eclipse
Terminal=false
Icon=/home/ybd/IDE/icon.xpm
Comment=Integrated Development Environment
NoDisplay=false
Categories=Development;IDE;
Name[en]=Eclipse Mars.2
通用设置window → preferences →
- 设置字体: general → appearance → color and font → basic → text font
- 编辑器背景颜色: general → editors → text editors → background color →
RGB:85,123,208
,#C7EDCC
- 工作空间字符编码: general → workspace
- 作者签名: java → code style → code templates → types 签名快捷键:
alt + shift + j
MyEclipse
MyEclipse安装请看: Ubuntu16.04下MyEclipse安装与破解
IntelliJ IDEA
之前听说过IDE[1], 都是大公司用的, 并没有用过
日后再研究补上
官网: http://www.jetbrains.com/idea/
新公司好多大牛, 用的都是IDEA, 于是乎“近墨者黑”, 那么既然有机会跟大牛接触, 我也开始真正意义上的学习IDEA了
安装
通过官方提供的 Toolbox App 进行安装, 可以很方便地进行版本管理:
部署Tomcat
若是服务器版切换root用户解压到 /opt/
或者 /usr/local/
下
直接运行tomcat目录下bin/start.sh
即可开启, 前提是配置好JDK
桌面版个人使用就解压到/home/{user}
目录下就可以了
MySQL以及GUI工具
基于Docker安装
拉取镜像
1 | docker pull mysql:5.7 |
运行实例
1 | MYSQL=/home/ybd/data/docker/mysql && \ |
终端链接
1 | sudo apt-get install mysql-client |
手动折腾安装
以mysql5.7
以上版本为例 –> mysql-5.7.10-linux-glibc2.5-x86_64.tar.gz
必须要先安装依赖的libaio才能正常按照mysql
1 | sudo apt-get update |
创建用户组以及用户
1 | sudo groupadd mysql |
尽量把mysql安装到/usr/local目录下面
1 | cd /usr/local |
创建必须的目录和进行授权
1 | cd mysql |
执行安装脚本
1 | sudo bin/mysqld --initialize --user=mysql |
在初始化的时候, 一定要仔细看屏幕, 最后大概有一行:[Note] A temporary password is generated for root@localhost: kklNBwkei1.t
注意这是root
的临时密码,记录下来以便后面修改密码!
重新对一些主要的目录进行授权, 确保安全性
1 | sudo chown -R root . |
从默认的模板创建配置文件, 需要在文件中增加 skip-grant-tables , 以便启动mysql以后修改root用户的密码
1 | sudo cp support-files/my-default.cnf ./my.cnf |
测试启动, 修改密码
1 | # 后台启动mysql |
方式一
因为前面修改了my.cnf
文件, 增加了 skip-grant-tables
参数, 所以不需要用户名即可登陆
进去后立即修改root
用户的密码, 密码的字段是 authentication_string
1
update mysql.user set authentication_string=password('root') where user='root';
修改密码后, 再把my.cnf
里面的 skip-grant-tables
去掉
方式二
修改密码也可以使用安装到时候提示到随机密码进行登录, 然后使用下面到命令修改密码.
建议用下面的方式设置数据库的密码1
alter user user() identified by 'root';
复制启动脚本到合适的位置
1 | sudo cp support-files/mysql.server /etc/init.d/mysql |
(Optional)增加自动启动
1 | sudo update-rc.d -f mysql defaults |
增加mysql
命令的路径到PATH
环境变量
1 | sudo touch /etc/profile.d/mysql.sh |
到此, mysql的安装基本完成
修复乱码以及忽略大小写, 找到MySQL文件里的my.cnf
在末尾添加
1 | lower_case_table_names=1 |
查看以及修改MySQL字符编码
查看
1 | mysql> show variables like 'collation_%'; |
修改
1 | mysql> set character_set_client=utf8; |
如果登录mysql出现以下错误
则可能配置未加载或服务未启动, 请重启系统, 然后启动mysql服务1
sudo service mysql start
结束mysql
服务1
sudo service mysql stop
开启远程链接
链接mysql后:1
2
3
4
5
6
7
8use mysql
// 下面两个root分别是帐号密码
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'root' WITH GRANT OPTION;
// 刷新特权
flush privileges;
// 查看修改是否成功
select host,user from user;
Mysql GUI
传统终端客户端
1 | sudo apt-get install mysql-client |
智能补全命令客户端
这个一个智能补全并且高亮语法的终端客户端 mycli
安装:
1 | sudo apt install mycli |
使用:
1 | $ mycli --help |
Navicat Premium
破解
到官网下载对应系统版本, 这里选择linux版本, 并解压
到Github下载注册机, 并解压
安装wine
1
2
3sudo add-apt-repository ppa:ubuntu-wine/ppa
sudo apt-get update
sudo apt-get install wine1.8进入注册机解压目录, 在此目录下打开命令窗口输入
1
wine navicat-patcher.exe <Navicat installation path> ./RegPrivateKey.pem
<Navicat installation path>
就是Navicat中存放navicat.exe
的根目录.接着再用
navicat-keygen.exe
生成注册码, 使用命令1
wine navicat-keygen.exe -text ./RegPrivateKey.pem
你会被要求选择Navicat产品类别、语言以及输入主版本号. 之后会随机生成一个序列号.
产品选择Premium, 语言选择Simplified Chinese, 版本输入12(当然, 因为下载的是Navicat Premium12 简体中文版)
然后会出现一个序列号:
1
2Serial number:
NAVA-DHCN-P2OI-DV46接下来填写
用户名
和组织名
, 随便写.然后打开navicat, 然后断网
在注册界面填入序列号, 然后激活. 这时会提示要手动激活, ok就选这个.
一般来说在线激活肯定会失败, 这时候Navicat会询问你是否
手动激活
, 直接选吧.在
手动激活
窗口你会得到一个请求码, 复制它并把它粘贴到keygen里. 最后别忘了连按至少两下回车结束输入.1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23Your name: DoubleLabyrinth
Your organization: DoubleLabyrinth
Input request code (in Base64), input empty line to end:
q/cv0bkTrG1YDkS+fajFdi85bwNVBD/lc5jBYJPOSS5bfl4DdtnfXo+RRxdMjJtEcYQnvLPi2LF0
OB464brX9dqU29/O+A3qstSyhBq5//iezxfu2Maqca4y0rVtZgQSpEnZ0lBNlqKXv7CuTUYCS1pm
tEPgwJysQTMUZf7tu5MR0cQ+hY/AlyQ9iKrQAMhHklqZslaisi8VsnoIqH56vfTyyUwUQXrFNc41
qG5zZNsXu/NI79JOo7qTvcFHQT/k5cTadbKTxY+9c5eh+nF3JR7zEa2BDDfdQRLNvy4DTSyxdYXd
sAk/YPU+JdWI+8ELaa0SuAuNzr5fEkD6NDSG2A==
Request Info:
{"K":"NAVADHCNP2OIDV46", "DI":"Y2eJk9vrvfGudPG7Mbdn", "P":"WIN 8"}
Response Info:
{"K":"NAVADHCNP2OIDV46","DI":"Y2eJk9vrvfGudPG7Mbdn","N":"DoubleLabyrinth","O":"DoubleLabyrinth","T":1537630251}
License:
oyoMYr9cfVGXeT7F1dqBwHsB/vvWj6SUL6aR+Kzb0lm5IyEj1CgovuSq+qMzFfx+
oHMFaGKFg6viOY2hfJcrO2Vdq0hXZS/B/Ie3jBS2Ov37v8e3ufVajaH+wLkmEpLd
xppCVLkDQjIHYR2IPz5s/L/RuWqDpEY4TPmGFF6q+xQMnqQA3vXPyG+JYMARXLru
Y1gCDLN30v3DpyOeqKmFjUqiHK5h8s0NYiH2OpMyaCpi12JsF23miP89ldQp3+SJ
8moo0cNGy7sFp2gX9ol2zVoo7qxfYlLl03f7CALJ6im0sx4yBsmlzFDdvpQUbXk8
YZ5rT4LML2Fx6Wgnnklb5g==如果不出意外, 你会得到一个看似用Base64编码的激活码. 直接复制它, 并把它粘贴到Navicat的
手动激活
窗口, 最后点激活
按钮. 如果没什么意外的话应该能成功激活.
创建快捷方式
1 | cd /usr/share/applications/ |
加入以下内容1
2
3
4
5
6
7
8
9
10[Desktop Entry]
Encoding=UTF-8
Name=Navicat
Comment=The Smarter Way to manage dadabase
Exec=/bin/sh "/home/ybd/Data/soft/application/navicat112_mysql_en_x64/start_navicat"
Icon=/home/ybd/Data/soft/application/navicat112_mysql_en_x64/Navicat/navicat.png
Categories=Application;Database;MySQL;navicat
Version=1.0
Type=Application
Terminal=0
后台运行
1 | nohup /home/ybd/data/application/navicat/navicat120_premium_en_x64/start_navicat > /dev/null 2>&1 & |
Redis
Maven
下载
官网下载或者点击镜像获取
配置
1、下载解压到自己的指定的目录后, 将命令放到/bin
下:1
sudo ln -s /自定义目录/apache-maven-3.3.9/bin/mvn /bin/mvn
2、添加环境变量
老规矩, 在/etc/profile.d
下创建一个maven.sh
的文件:1
2sudo touch /etc/profile.d/maven.sh
sudo vi /etc/profile.d/maven.sh
输入以下内容:1
2export M2_HOME=/自定义目录/apache-maven-3.3.9
export PATH=${M2_HOME}/bin:$PATH
然后source
一下:1
source /etc/profile.d/maven.sh
查看是否配置成功:1
mvn -v
输入内容如下:1
2
3
4
5
6Apache Maven 3.3.9 (bb52d8502b132ec0a5a3f4c09453c07478323dc5; 2015-11-11T00:41:47+08:00)
Maven home: /home/ybd/Data/application/maven/apache-maven-3.3.9
Java version: 1.8.0_65, vendor: Oracle Corporation
Java home: /usr/local/jdk1.8.0_65/jre
Default locale: zh_CN, platform encoding: UTF-8
OS name: "linux", version: "4.4.0-67-generic", arch: "amd64", family: "unix"
阿里镜像
1 | <mirrors> |
MongoDB
安装
1 | sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 0C49F3730359A14518585931BC711F9BA15703C6 |
安装完成后查看版本:1
mongo -version
启动、重新启动和关闭mongodb命令:1
2
3sudo service mongod start
sudo service mongod stop
sudo service mongod restart
查看是否启动成功:1
sudo cat /var/log/mongodb/mongod.log
在 mongod.log
日志中若出现如下信息, 说明启动成功:1
[initandlisten] waiting for connections on port 27017
MongoDB 卸载
删除 mongodb 包1
sudo apt-get purge mongodb-org*
删除 MongoDB 数据库和日志文件1
2sudo rm -r /var/log/mongodb
sudo rm -r /var/lib/mongodb
MongoDB 使用
shell命令模式
输入mongo
进入shell命令模式, 默认连接的数据库是test数据库, 命令如下:1
➜ ~ mongo
常用操作命令:
show dbs
: 显示数据库列表show collections
: 显示当前数据库中的集合(类似关系数据库中的表table)show users
: 显示所有用户use yourDB
: 切换当前数据库至yourDBdb.help()
: 显示数据库操作命令db.yourCollection.help()
: 显示集合操作命令, yourCollection是集合名
官方文档: https://docs.mongodb.com/master/tutorial/install-mongodb-on-ubuntu/
GUI客户端
RabbitMQ
选择Docker安装. . . 不折腾了. .
1 | docker pull rabbitmq:3-management |
(注意版本, 是management
)
浏览器打开localhost:15673
, 默认帐号密码都是guest
集群: https://www.jianshu.com/p/624871c646b9
Pip
1 | sudo apt install python3-pip |
Kafka&Zookeeper集群
docker-compose.yml
:
1 | version: '3' |
启动:1
docker-compose up -d
测试:
1 | #创建主题 |
Zookeeper UI
https://github.com/DeemOpen/zkui
https://github.com/elkozmon/zoonavigator
Rinetd
Rinetd 是一个端口转发工具, 安装:
1 | sudo apt install rinetd -y |
配置文件 /etc/rinetd.conf
:
1 | # |
操作:
1 | sudo service rinetd [force-reload|reload|restart|start|stop] |
应用场景之一: 手机APP调试
- 将手机 wifi 代理设置为本地 rinetd 配置的端口, 比如上面的 80
- 将服务起到 8080 端口即可
- 修改 DNS 解析, 比如 APP 请求的地址是 api.xxx.com, 则将这个域名解析到本地, 并重启网络
sudo /etc/init.d/networking restart
Ngrok
请看 这里
- 1.IDEA 全称IntelliJ IDEA, 是java语言开发的集成环境, IntelliJ在业界被公认为最好的java开发工具之一, 尤其在智能代码助手、代码自动提示、重构、J2EE支持、Ant、JUnit、CVS整合、代码审查、 创新的GUI设计等方面的功能可以说是超常的. IDEA是JetBrains公司的产品, 这家公司总部位于捷克共和国的首都布拉格, 开发人员以严谨著称的东欧程序员为主 ↩