¶一、安装JDK
¶1.下载并解压jdk到指定目录
下载地址:https://www.oracle.com/technetwork/java/javase/downloads/java-archive-javase8-2177648.html
这里我下载的是jdk-8u171-linux-x64.tar.gz
,将压缩包放到/home/wen/MyPackage/
1 | cd /usr/local/ |
¶2.添加环境变量
1 | vim /etc/profile |
文件末尾添加:
1 | export JAVA_HOME=/usr/local/java/jdk1.8.0_171 |
¶3.更新环境变量
1 | source /etc/profile #重新执行刚修改的初始化文件,使之立即生效,而不必注销并重新登录 |
¶二、安装tomcat
下载地址:https://archive.apache.org/dist/tomcat/tomcat-8/v8.5.31/bin/apache-tomcat-8.5.31.tar.gz
将压缩包放到/home/wen/MyPackage/
目录下。然后执行以下命令:
1 | cd /usr/local/ |
¶三、安装mysql
¶1.安装mysql-server、mysql-client和libmysqlclient-dev
1 | sudo apt-get install mysql-server |
由于MySQL5.7版本最高只适配到Ubuntu17.04,如要在18.04上安装mysql5.7,需要通过以下方式安装:
下载https://dev.mysql.com/get/mysql-apt-config_0.8.11-1_all.deb mysql软件源包并安装。
sudo dpkg -i mysql-apt-config_0.8.11-1_all.deb
安装执行
然后会出现一个紫色框界面。
它有四个选项。选择第一个,enter确定,
然后又会出现一个紫色框界面,选择8.0那个。enter确定,
会回到第一个紫色框,此时按上下键选择 ok,enter确定。之后执行
sudo apt-get update
sudo apt-get install mysql-server
安装过程中会询问,都选择yes
安装最后会出现紫色框,让你输入密码,输入完成之后,会再让你输入一遍。确定。
输入完成之后,会出现紫色框问你选择密码的加密方式。因为第一种加密方式Ubuntu不支持,所以我们选择第二个加密方式。enter确定。此时启动MySQL:
service mysql start
进入MySQL:
mysql -uroot -p
卸载mysql:
- sudo apt purge mysql-*
- sudo rm -rf /etc/mysql/ /var/lib/mysql
- sudo apt autoremove
- sudo apt autoreclean
¶2.测试mysql是否安装成功
安装成功后可以通过下面的命令测试是否安装成功:
1 | sudo netstat -tap | grep mysql |
¶3.设置mysql允许远程访问
首先编辑文件/etc/mysql/mysql.conf.d/mysqld.cnf
1 | sudo vi /etc/mysql/mysql.conf.d/mysqld.cnf |
注释掉bind-address = 127.0.0.1
¶4.授权
保存退出,然后进入mysql服务,执行授权命令:
1 | # grant all on *.* to root@'%' identified by '你的密码' with grant option; |
¶5.重启mysql
然后执行quit
命令退出mysql服务,执行如下命令重启mysql
1 | # service mysql restart |
¶6.远程连接测试
通过windows的cmd输入:
1 | # mysql -h 192.168.5.116 -P 3306 -u root -p123456 |
¶7.其他问题
Mysql登录权限问题
Ubuntu18.04 安装mysql或者mariadb之后,发现普通用户和远程都没有权限连接。
ERROR 1045: Access denied for user: 'root@localhost' (Using password: YES)
修改了密码也不对。然后sudo mysql -u root
即可登录。这显然不是我们想要的。
解决方案:删除root
,重新创建用户。
首先,登录
1 | mysql> sudo mysql -u root |
然后查看当前用户
1 | mysql> SELECT User,Host FROM mysql.user; |
User | Host |
---|---|
admin | localhost |
debian-sys-maint | localhost |
magento_user | localhost |
mysql.sys | localhost |
root | localhost |
删除root账号
1 | mysql> DROP USER 'root'@'localhost'; |
重新创建root:’@’%'时允许远程登录
1 | mysql> CREATE USER 'root'@'%' IDENTIFIED BY '123456'; |
授权
1 | mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' WITH GRANT OPTION; |
关于重置密码
1 | mysql> SET PASSWORD FOR root@'localhost' = PASSWORD('password'); |
or
1 | mysql> UPDATE mysql.user SET Password=PASSWORD('newpwd') WHERE User='root'; |
or
1 | mysql> USE mysql |