重装ubuntu18.04,生命在于折腾

重装ubuntu18.04,编译安装最新nginx、php7.3.3、mysql8.0.15、redis5.0.3

下载ubuntu最新版本,并按照官方教程烧录U盘启动 (windows系统上制作):

  • ubuntu官网制作启动盘教程
  • 从U盘启动并安装ubuntu系统,这个一般没有 遇到过问题,不再赘述;记录安装完成后需要 做的事:
  1. 打开应用程序菜单,搜索“软件更新程序”,检查更新;
  2. 启用媒体编码解码器:apt://ubuntu-restricted-extras/
  3. 打开启动栏的点击最小化功能,命令:
    gsettings set org.gnome.shell.extensions.dash-to-dock click-action 'minimize'
    
  4. 使用tweaks解锁隐藏设置(电池百分比、关闭按钮显示到窗口左侧等)apt://gnome-tweak-tool/
  5. google官网下载安装chrome,这个地址(chrome官网)[https://www.google.cn/chrome]thanks god,没被和谐。。

安装vmware虚拟机,错误请参考我另一篇博文:

ubuntu18.04安装虚拟机vmware报错 GLib does not have GSettings support1.

安装mysql8.0.15

参照官网手册 安装步骤,直接下载那个all.deb比较好,如果是CentOS,请参照这个手册
创建mysql新用户:

use mysql;
#创建用户first236108,密码为mima
create user first236108 identified by 'mima';
#给first236108对数据库shop的读写执行权限,以及@'%'从外网连接
grant execute,insert,select,update on shop.* to 'first236108'@'%';

安装nginx

点此处打开官网下载页面


#解压
tar zxvf nginx-1.14.2.tar.gz
cd nginx-1.14.2
#配置
./configure --prefix=/usr/local/nginx
#编译安装
sudo make && make install

把nginx添加服务并使用systemctl管理,新建/lib/systemd/system/nginx.service,内容参考 官网脚本,记得修改路径

[Unit]
Description=The NGINX HTTP and reverse proxy server
After=syslog.target network.target remote-fs.target nss-lookup.target

[Service]
Type=forking
PIDFile=/run/nginx.pid
ExecStartPre=/usr/sbin/nginx -t
ExecStart=/usr/sbin/nginx
ExecReload=/usr/sbin/nginx -s reload
ExecStop=/bin/kill -s QUIT $MAINPID
PrivateTmp=true

[Install]
WantedBy=multi-user.target

然后执行命令开机启动
systemctl enable nginx.service

编译安装PHP,下载最新PHP7.3.3源码,解压并配置、编译安装:

  1. 官网下载,解压、配置
```
tar zxvf php-7.3.3
cd php-7.3.3
./configure --prefix=/usr/local/php --with-config-file-path=/usr/local/php --enable-fpm --with-fpm-user=www --with-fpm-group=www --with-openssl --enable-pdo --with-pdo-mysql --with-curl --enable-mbregex --enable-mbstring --enable-sockets --enable-fileinfo --with-zlib --enable-zip --enable-pcntl --with-gd 
```

另外一套朋友一直用的配置,供大家选择:

./configure --prefix=/usr/local/php \
--with-config-file-path=/usr/local/php/etc \
--enable-fpm \
--with-fpm-user=www \
--with-fpm-group=www \
--enable-mysqlnd \
--with-mysqli=mysqlnd \
--with-pdo-mysql=mysqlnd \
--enable-mysqlnd-compression-support \
--with-iconv-dir \
--with-freetype-dir \
--with-jpeg-dir \
--with-png-dir \
--with-zlib \
--with-libxml-dir \
--enable-xml \
--disable-rpath \
--enable-bcmath \
--enable-shmop \
--enable-sysvsem \
--enable-inline-optimization \
--with-curl \
--enable-mbregex \
--enable-mbstring \
--enable-intl \
--enable-ftp \
--with-gd \
--enable-gd-jis-conv \
--with-openssl \
--with-mhash \
--enable-pcntl \
--enable-sockets \
--with-xmlrpc \
--enable-zip \
--enable-soap \
--with-gettext \
--disable-fileinfo \
--enable-opcache \
--with-pear \
--enable-maintainer-zts \
--with-ldap=shared \
--without-gdbm
  • 其中两个比较迷惑的报错是curl 版本过低,以及openssl相关的 configure: error: Cannot find OpenSSL’s ,解决办法是安装仔细检查下面两个库是否安装
    sudo apt install openssl
    sudo apt install libcurl4-openssl-dev
    sudo apt install openssl
    sudo apt install libssl-dev
    
  1. 编译安装,
    sudo make && make install
  2. 复制配置文件,并修改php-fpm配置,把php-fpm注册服务,用systemctl管理并设置开机启动、添加php环境变量
    sudo cp /php.ini.development /use/local/php/
    sudo cp sapi/fpm/php-fpm /usr/local/bin
    sudo cp /usr/local/php/etc/php-fpm.conf.default /usr/local/php/etc/php-fpm.conf
    sudo mv /usr/local/php/etc/php-fpm.d/www.conf.default /use/local/php/etc/php-fpm.d/www.conf
    
    #注册服务
    sudo cp /php-7.3.3/sapi/fpm/php-fpm.service /lib/systemd/system/
    #开机启动
    systemctl enable php-fpm
    systemctl start php-fpm
    #添加环境变量
    sudo ln -s /usr/local/php/bin/php /usr/bin/
    

安装redis

  1. redis官网下载 稳定版本,参照 官网quick start 安装
    wget http://download.redis.io/redis-stable.tar.gz
    tar xvzf redis-stable.tar.gz
    cd redis-stable
    sudo make prefix=/usr/local/redis install
    
  2. 添加redis服务并使用systemctl管理开机启动:
    sudo mkdir /etc/redis
    sudo mkdir /var/redis
    sudo cp utils/redis_init_script /etc/init.d/redis_6379
    sudo cp redis.conf /etc/redis/6379.conf
    #记得修改配置
    #daemonize yes  守护进程
    #pidfile /var/run/redis_6379.pid
    #logfile /var/log/redis_6379.log,
    #dir to /var/redis/6379  这个比较重要
    sudo vim /etc/redis/6379.conf
    sudo mkdir /var/redis/6379
    sudo update-rc.d redis_6379 defaults
    systemctl enable redis_6379
    systemctl start redis_6379
    
    ** 其中redis.conf有一个supervised这个选项没测试,看说明好像设置了systemd就可以直接用systemctl管理服务, ** 参考这篇

你可能感兴趣的:(PHP,linux,mysql)