乐趣区

关于运维:阿里云服务器安装部署ubuntu

首次设置 root 明码

sudo passwd root

一、装置 nginx

1、apt-get 装置命令

sudo apt-get install nginx

报错:“Unable to locate package nginx”

解决:装置前先执行命令,更新软件源

sudo apt-get update

nginx 文件装置实现之后的文件地位:

  • /usr/sbin/nginx:主程序
  • /etc/nginx:寄存配置文件
  • /usr/share/nginx:寄存动态文件
  • /var/log/nginx:寄存日志

2、下载 nginx 包装置

卸载 apt-get 装置的 nginx

# 彻底卸载 nginx
apt-get --purge autoremove nginx

#查看 nginx 的版本号
nginx -v

1)装置依赖包

sudo apt-get install gcc

sudo apt-get install libpcre3 libpcre3-dev

sudo apt-get install zlib1g zlib1g-dev

# Ubuntu14.04 的仓库中没有发现 openssl-dev,由上面 openssl 和 libssl-dev 代替
#apt-get install openssl openssl-dev
sudo apt-get install openssl 

sudo apt-get install libssl-dev

2)装置 pcre, 使 nginx 反对 rewrite 性能

cd /usr/local/src

wget http://downloads.sourceforge.net/project/pcre/pcre/8.35/pcre-8.35.tar.gz

tar zxvf pcre-8.35.tar.gz

cd pcre-8.35

./configure

make && make install

# 查看 pcre 版本
pcre-config --version

3)装置 nginx

cd /usr/local

mkdir nginx

cd nginx

# 其余版本 nginx 编译时报错,故抉择 nginx-1.18.0
wget http://nginx.org/download/nginx-1.18.0.tar.gz

tar -xvf nginx-1.18.0.tar.gz 

cd nginx-1.18.0

# 失常装置
./configure --prefix=/usr/local/webserver/nginx --with-http_stub_status_module --with-http_ssl_module --with-pcre=/usr/local/src/pcre-8.35

# 附加 gzip_static
./configure --prefix=/usr/local/webserver/nginx --with-http_stub_status_module --with-http_ssl_module --with-pcre=/usr/local/src/pcre-8.35 --with-http_gzip_static_module


make && make install

# 查看 nginx 版本
/usr/local/webserver/nginx/sbin/nginx -v

二、装置 mysql

1、装置配置

1)装置

sudo apt-get install mysql-server

此处默认装置 8.0 版本

2)初始化配置

sudo mysql_secure_installation

配置项较多,如下所示:

#1VALIDATE PASSWORD PLUGIN can be used to test passwords...Press y|Y for Yes, any other key for No: N (我的选项)#2Please set the password for root here...New password: (输出明码)Re-enter new password: (反复输出)#3By default, a MySQL installation has an anonymous user,allowing anyone to log into MySQL without having to havea user account created for them...Remove anonymous users? (Press y|Y for Yes, any other key for No) : N (我的选项)#4Normally, root should only be allowed to connect from'localhost'. This ensures that someone cannot guess atthe root password from the network...Disallow root login remotely? (Press y|Y for Yes, any other key for No) : Y (我的选项)#5By default, MySQL comes with a database named 'test' thatanyone can access...Remove test database and access to it? (Press y|Y for Yes, any other key for No) : N (我的选项)#6Reloading the privilege tables will ensure that all changesmade so far will take effect immediately.Reload privilege tables now? (Press y|Y for Yes, any other key for No) : Y (我的选项)

3)查看 mysql 服务状态

systemctl status mysql.service

2、配置近程连贯

mysql >  grant all privileges on root.* to root@'%' 提醒的错误信息如下:You are not allowed to create a user with GRANT;

1)产生用户不能受权的起因是 mysql 数据库中 user 表中的特定用户(root) 的 host 的属性值为 localhost.

解决办法如下:

# 应用 mysql 数据库 mysql > use mysql;# 特定用户的 host 批改# 留神,在实在的生产环境中,并不倡议这么批改,因为平安危险太大。我倡议依据理论状况将 root 用户的 host 项批改为某个指定的 ip 地址,或依然放弃 localhostmysql > update user set host='%' where user='root';# 指定用户的受权, 受权 root 用户对指定库的所有表,所有权限并设置近程拜访 mysql > grant all privileges on 指定库.* to root@'%';# 刷新 quanxianmysql > flush privileges;

配置 3306 端口可近程连贯步骤

查看端口是否关上

 netstat -an|grep 3306

2)正文掉配置文件 /etc/mysql/mysql.conf.d/mysqld.cnf

# bind-address = 127.0.0.1

重启 mysql

/etc/init.d/mysql restart

3)还有起因是 MySql 8.0 版本批改了默认的加密规定,用 Navicat 连贯会报错,解决办法为执行如下语句

ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY 'root123';

‘root’@’%’ 中 root 为用户名,’%’ 为 user 表 host 字段的值。’root123’ 为用户明码

4)阿里云服务器需配置平安组规定,凋谢端口

3、问题解决

参考:解决 mysql 的配置 ONLY_FULL_GROUP_BY 引起的谬误

1)批改配置文件 /etc/mysql/mysql.conf.d/mysqld.cnf,在 [mysqld] 上面增加代码:

sql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION

2)重启 mysql

/etc/init.d/mysql restart

三、装置 jdk

1、装置

因为 Oracle 的 OpenJDK 11 和其 Oracle JDK 11 性能雷同,因而如果你不须要 Oracle 的商业服务反对,强烈建议你应用 OpenJDK,因为其包治理集成和更新都比拟不便。

应用如下命令即可在 Ubuntu 18.04,19.04,20.04 上装置 OpenJDK。

sudo apt install openjdk-11-jdk

2、查看

同时会装置 openjdk-11-jre 包,其蕴含了 java 的运行时包,完了能够用上面的命令查看版本:

java -version

输入如下:

openjdk 11.0.11 2021-04-20OpenJDK Runtime Environment (build 11.0.11+9-Ubuntu-0ubuntu2.20.04)OpenJDK 64-Bit Server VM (build 11.0.11+9-Ubuntu-0ubuntu2.20.04, mixed mode, sharing)

### 3、若装置了两个版本,可依照如下操作设置

第一步:将 JDK 8 放在抉择零碎上面:

sudo update-alternatives --install /usr/bin/java java /usr/lib/jvm/jdk1.8.0_221/bin/java 1sudo update-alternatives --install /usr/bin/javac javac /usr/lib/jvm/jdk1.8.0_221/bin/javac 1

应用如下命令抉择默认 JDK 版本

sudo update-alternatives --config javasudo update-alternatives --config javac

四、装置 redis

1、装置

sudo apt-get install redis-server

2、查看

应用 ps -aux|grep redis 命令能够看到服务器零碎过程默认端口 6379

ps -aux|grep redis

查看 redis 服务器状态

# 查看端口监听状况 netstat -nlt|grep 6379# 查看 redis 服务器状态 sudo /etc/init.d/redis-server status
退出移动版