一.修改允许root和密码方式登录
在AWS上申请了一个EC2主机,因为使用xshell用centos用户和证书登录,觉得很麻烦,所以先修改成可以通过用户名和密码登录
--先用证书登录后修改密码
[centos@ip-10-10-10-99 ~]$ sudo passwd root
--修改配置文件允许用户名和密码登录
[centos@ip-10-10-10-99 ~]$ sudo vim /etc/ssh/sshd_config
sudo: vim: command not found
--查看安装情况
[centos@ip-10-10-10-99 ~]$ rpm -qa|grep vim
vim-minimal-7.4.629-6.el7.x86_64
--需要安装增强包
[centos@ip-10-10-10-99 ~]$ sudo yum -y install vim-enhanced-7.4.629-6.el7.x86_64
[centos@ip-10-10-10-99 ~]$ sudo vim /etc/ssh/sshd_config
--找到下面两句,把#注释掉。
PermitRootLogin yes
PasswordAuthentication yes
--保存后重启服务
[centos@ip-10-10-10-99 ~]# sudo systemctl restart sshd.service
使用root 和密码就可以登录了。
二.安装apache
--安装apache
[root@ip-10-10-10-99 ~]#yum install httpd
[root@ip-10-10-10-99 ~]#systemctl start httpd
--设置开机自启动
[root@ip-10-10-10-99 ~]# systemctl enable httpd
Created symlink from /etc/systemd/system/multi-user.target.wants/httpd.service to /usr/lib/systemd/system/httpd.service.
--配置防火墙规则
[root@ip-10-10-10-99 ~]# systemctl restart firewalld
Failed to restart firewalld.service: Unit not found.
--原来还没有安装防火墙,先安装
[root@ip-10-10-10-99 ~]#yum install firewalld
[root@ip-10-10-10-99 ~]# systemctl start firewalld.service
[root@ip-10-10-10-99 ~]# systemctl stop firewalld.service
[root@ip-10-10-10-99 ~]# firewall-cmd --add-service=http
FirewallD is not running
[root@ip-10-10-10-99 ~]# systemctl start firewalld
--增加规则
[root@ip-10-10-10-99 ~]# firewall-cmd --add-service=http
success
三.卸载mariadb
虽然这个是免费的,但是因为原来的网站是mysql,怕有不兼容,还是卸载mariadb 安装mysql
[root@ip-10-10-10-99 ~]# rpm -qa | grep mariadb
mariadb-libs-5.5.64-1.el7.x86_64
[root@ip-10-10-10-99 ~]# rpm -e mariadb-libs-5.5.64-1.el7.x86_64
error: Failed dependencies:
libmysqlclient.so.18()(64bit) is needed by (installed) postfix-2:2.10.1-7.el7.x86_64
libmysqlclient.so.18(libmysqlclient_18)(64bit) is needed by (installed) postfix-2:2.10.1-7.el7.x86_64
[root@ip-10-10-10-99 ~]# rpm -e --nodeps mariadb-libs-5.5.64-1.el7.x86_64
四.第一次安装mysql失败
--下载mysql
[root@ip-10-10-10-99 ~]# wget http://dev.mysql.com/get/mysql80-community-release-el8-1.noarch.rpm
[root@ip-10-10-10-99 ~]# yum -y install mysql80-community-release-el8-1.noarch.rpm
--安装
[root@ip-10-10-10-99 ~]# yum -y install mysql-server
You could try using --skip-broken to work around the problem
** Found 2 pre-existing rpmdb problem(s), 'yum check' output follows:
2:postfix-2.10.1-7.el7.x86_64 has missing requires of libmysqlclient.so.18()(64bit)
2:postfix-2.10.1-7.el7.x86_64 has missing requires of libmysqlclient.so.18(libmysqlclient_18)(64bit)
原因是缺少 mysql-community-libs-compat-5.7.25-1.el7.x86_64.rpm
[root@ip-10-10-10-99 ~]# wget http://dev.mysql.com/get/mysql-community-libs-compat-5.7.25-1.el7.x86_64.rpm
[root@ip-10-10-10-99 ~]# yum -y install mysql-community-libs-compat-5.7.25-1.el7.x86_64.rpm
Error: Package: mysql-community-libs-8.0.21-1.el8.x86_64 (mysql80-community)
Requires: libc.so.6(GLIBC_2.28)(64bit)
又找到其他解决方法安装:
wget http://www.percona.com/redir/downloads/Percona-XtraDB-Cluster/5.5.37-25.10/RPM/rhel6/x86_64/Percona-XtraDB-Cluster-shared-55-5.5.37-25.10.756.el6.x86_64.rpm
rpm -ivh Percona-XtraDB-Cluster-shared-55-5.5.37-25.10.756.el6.x86_64.rpm
[root@ip-10-10-10-99 ~]# yum localinstall mysql80-community-release-el8-1.noarch.rpm
wget -c http://dev.mysql.com/get/mysql-community-libs-5.7.28-1.sles12.x86_64.rpm
mysql-community-server.x86_64 0:8.0.18-1.el8
Error: Package: mysql-community-client-8.0.21-1.el8.x86_64 (mysql80-community) Requires: libssl.so.1.1()(64bit)
Error: Package: mysql-community-client-8.0.21-1.el8.x86_64 (mysql80-community) Requires: libstdc++.so.6(CXXABI_1.3.9)(64bit)
Error: Package: mysql-community-client-8.0.21-1.el8.x86_64 (mysql80-community) Requires: libcrypto.so.1.1(OPENSSL_1_1_0)(64bit)
Error: Package: mysql-community-server-8.0.21-1.el8.x86_64 (mysql80-community) Requires: libcrypto.so.1.1(OPENSSL_1_1_0)(64bit)
Error: Package: mysql-community-client-8.0.21-1.el8.x86_64 (mysql80-community) Requires: libcrypto.so.1.1()(64bit)
Error: Package: mysql-community-server-8.0.21-1.el8.x86_64 (mysql80-community) Requires: libstdc++.so.6(GLIBCXX_3.4.22)(64bit)
Error: Package: mysql-community-server-8.0.21-1.el8.x86_64 (mysql80-community) Requires: libssl.so.1.1()(64bit)
Error: Package: mysql-community-client-8.0.21-1.el8.x86_64 (mysql80-community) Requires: libtinfo.so.6()(64bit)
Error: Package: mysql-community-server-8.0.21-1.el8.x86_64 (mysql80-community) Requires: libcrypto.so.1.1(OPENSSL_1_1_1)(64bit)
Error: Package: mysql-community-client-8.0.21-1.el8.x86_64 (mysql80-community) Requires: libc.so.6(GLIBC_2.28)(64bit)
Error: Package: mysql-community-libs-8.0.21-1.el8.x86_64 (mysql80-community) Requires: libstdc++.so.6(CXXABI_1.3.9)(64bit)
Error: Package: mysql-community-libs-8.0.21-1.el8.x86_64 (mysql80-community) Requires: libssl.so.1.1(OPENSSL_1_1_1)(64bit)
Error: Package: mysql-community-client-8.0.21-1.el8.x86_64 (mysql80-community) Requires: libcrypto.so.1.1(OPENSSL_1_1_1)(64bit)
Error: Package: mysql-community-server-8.0.21-1.el8.x86_64 (mysql80-community)
好整齐划一的错误,错误的令人感动!
最后才发现,其实是自己下错了版本。
el8对应linux8(centos8),我这是centos7,应该下载el7的rpm。
五.第二次安装mysql:
--这次下载正确版本
[root@ip-10-10-10-99 ~]#wget http://dev.mysql.com/get/mysql80-community-release-el7-1.noarch.rpm
[root@ip-10-10-10-99 ~]# yum -y install mysql80-community-release-el7-1.noarch.rpm
[root@ip-10-10-10-99 ~]# yum -y install mysql-server
成功
--启动服务器
[root@ip-10-10-10-99 ~]# systemctl start mysqld.service
--查看状态
[root@ip-10-10-10-99 ~]# systemctl status mysqld.service
● mysqld.service - MySQL Server
Loaded: loaded (/usr/lib/systemd/system/mysqld.service; enabled; vendor preset: disabled)
Active: active (running) since Mon 2020-09-07 04:28:42 UTC; 16s ago
Docs: man:mysqld(8)
http://dev.mysql.com/doc/refman/en/using-systemd.html
Process: 9000 ExecStartPre=/usr/bin/mysqld_pre_systemd (code=exited, status=0/SUCCESS)
Main PID: 9078 (mysqld)
Status: "Server is operational"
CGroup: /system.slice/mysqld.service
└─9078 /usr/sbin/mysqld
Sep 07 04:28:34 ip-10-10-10-99.ap-east-1.compute.internal systemd[1]: Starting MySQL Server...
Sep 07 04:28:42 ip-10-10-10-99.ap-east-1.compute.internal systemd[1]: Started MySQL Server.
--查看初始密码
[root@ip-10-10-10-99 ~]# grep "password" /var/log/mysqld.log
2020-09-07T04:28:38.540800Z 6 [Note] [MY-010454] [Server] A temporary password is generated for root@localhost: PutqT6p6#P>i
[root@ip-10-10-10-99 ~]# mysql -uroot -p
--修改root密码
mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY 'PutqT6p6#P20!>i';
mysql> select host,user from mysql.user;
+-----------+------------------+
| host | user |
+-----------+------------------+
| localhost | mysql.infoschema |
| localhost | mysql.session |
| localhost | mysql.sys |
| localhost | root |
+-----------+------------------+
4 rows in set (0.00 sec)
六.安装php
--直接安装
[root@ip-10-10-10-99 ~]# yum install -y php php-mysql
[root@ip-10-10-10-99 ~]# systemctl restart httpd
--测试
可以在 /var/www/html 下放个php文件测试一下
--安装返工
php这个看似安装简单,因为wordpress高版本是不支持这个自带版本的,你打开wordpress网站会遇到错误,所以还要返工。
Your server is running PHP version 5.4.16 but WordPress 5.5.1 requires at least 5.6.20.
--查看php版本
[root@ip-10-10-10-99 centos]# yum list installed | grep php
php.x86_64 5.4.16-48.el7 @base
php-bcmath.x86_64 5.4.16-48.el7 @base
php-cli.x86_64 5.4.16-48.el7 @base
php-common.x86_64 5.4.16-48.el7 @base
php-fedora-autoloader.noarch 1.0.1-2.el7 @epel
php-gd.x86_64 5.4.16-48.el7 @base
php-mbstring.x86_64 5.4.16-48.el7 @base
php-mysql.x86_64 5.4.16-48.el7 @base
php-pdo.x86_64 5.4.16-48.el7 @base
php-php-gettext.noarch 1.0.12-1.el7 @epel
php-process.x86_64 5.4.16-48.el7 @base
php-tcpdf.noarch 6.2.26-1.el7 @epel
php-tcpdf-dejavu-sans-fonts.noarch 6.2.26-1.el7 @epel
php-tidy.x86_64 5.4.16-9.el7 @epel
php-xml.x86_64 5.4.16-48.el7 @base
phpMyAdmin.noarch 4.4.15.10-4.el7 @epel
--卸载php
[root@ip-10-10-10-99 centos]# yum remove php-common -y
--安装7.2
[root@ip-10-10-10-99 centos]# rpm -Uvh https://mirror.webtatic.com/yum/el7/epel-release.rpm
[root@ip-10-10-10-99 centos]# rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm
[root@ip-10-10-10-99 centos]# yum install -y php72w php72w-opcache php72w-xml php72w-mcrypt php72w-gd php72w-devel php72w-mysql php72w-intl php72w-mbstring
[root@ip-10-10-10-99 centos]# yum install php72w-fpm.x86_64 -y
七、安装phpMyAdmin
--直接安装,但是出错
[root@ip-10-10-10-99 html]# yum install -y phpmyadmin
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
* base: d36uatko69830t.cloudfront.net
* extras: d36uatko69830t.cloudfront.net
* updates: d36uatko69830t.cloudfront.net
No package phpmyadmin available.
--先执行如下命令再安装成功
[root@ip-10-10-10-99 html]#yum install epel-release -y
[root@ip-10-10-10-99 html]# yum install -y phpmyadmin
--安装成功后配置访问权限
[root@ip-10-10-10-99 html]# vi /etc/httpd/conf.d/phpMyAdmin.conf
增加一个
<RequireAny>
Require all granted
Require ip 127.0.0.1
--重启生效
[root@ip-10-10-10-99 html]# systemctl restart httpd
然后可以正常使用IE去访问
http://18.*****/phpmyadmin
--修改配置文件
[root@ip-10-10-10-99 libraries]# cp config.default.php /usr/share/phpMyAdmin/config.inc.php
八.安装wordpress
--进入安装目录安装
[root@ip-10-10-10-99 html]#cd /var/www/html
[root@ip-10-10-10-99 html]# wget http://wordpress.org/latest.tar.gz
[root@ip-10-10-10-99 html]# tar xzvf latest.tar.gz
cd /var/www/html/wordpress
--修改配置文件
cp wp-config-sample.php wp-config.php
sudo vim wp-config.php
九.导入mysql 数据库
在原来网站中将数据库备份下载下来,解压文件。
mysql>create database mydatabase;
mysql>use mydatabase;
mysql>set names utf8;
mysql>source /home/abc/mydatabase.sql;
mysql> create user 'myname'@'%' identified by 'mypassword';
mysql> grant select,insert,update,delete,create on [mydatabase].* to 'myname';
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near
mysql> grant all privileges on mydatabase.* to 'myname'@'%' with grant option;
Query OK, 0 rows affected (0.00 sec)
mysql> flush privileges;
十.部署wordpress站点
下载原网站上的wordpress站点内容,上传到新服务器上,解压并修改配置文件和数据库连接密码。
其实用不着这么麻烦,有集成安装的。