@(工作)
Centos 7 搭建服务器
服务器 Nginx
数据库 Mysql
nosql Redis
语言 PHP (框架:Laravel 异步:swoole)
其他 git,jenkins,zabbix
PHP
CentOS/RHEL 7.x:
rpm -Uvh https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm
CentOS/RHEL 6.x:
rpm -Uvh https://dl.fedoraproject.org/pub/epel/epel-release-latest-6.noarch.rpm
rpm -Uvh https://mirror.webtatic.com/yum/el6/latest.rpm
怕麻烦装了所有拓展
yum -y install mod_php71w php71w-bcmath php71w-cli php71w-common php71w-dba php71w-devel php71w-embedded php71w-enchant php71w-fpm php71w-gd php71w-imap php71w-interbase php71w-intl php71w-ldap php71w-mbstring php71w-mcrypt php71w-mysql php71w-mysqlnd php71w-odbc php71w-opcache php71w-pdo php71w-pdo_dblib php71w-pear php71w-pecl-apcu php71w-pecl-imagick php71w-pecl-memcached php71w-pecl-mongodb php71w-pecl-redis php71w-pecl-xdebug php71w-pgsql php71w-phpdbg php71w-process php71w-pspell php71w-recode php71w-snmp php71w-soap php71w-tidy php71w-xml php71w-xmlrpc
配置
vim /etc/php.ini
mysql
添加 Mysql Yum资源库
yum localinstall branch.rpm
branch 替换为 自己需要的文件名 如我准备安装mysql57-community-release-el7-11.noarch.rpm 那么branch就应该为 mysql57-community-release-el7-11.noarch
下载 rmp文件 传到服务器上
执行yum localinstall mysql57-community-release-el7-11.noarch.rpm
这时候如果 没有找到rmp文件会提示
-Loaded plugins: fastestmirror
Cannot open: mysql57-community-release-el7-11.noarch.rpm. Skipping.
Nothing to do
上传文件 或找到上传的位置再执行指令 正常情况如下
接着执行 sudo grep 'temporary password' /var/log/mysqld.log
正整正常的话 会类似 [Note] A temporary password is generated for root@localhost: 2x!q-WeeG6H4 粗体部分就是你被分配的root密码。
如果不修改的话应该是无法使用Navicat连接的,会提示
Your password has expired. To log in you must change it using a client that supports expired passwords
接下来修改初始密码
mysql -uroot -p
mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY 'password4you!';
最好遵循新的密码策略 至少包含一个大写字母,一个小写字母,一个数字和一个特殊字符,并且总的密码长度至少为8个字符
我自己设置 123456时也无法通过navicat链接,不知道是不是这个原因
附上mysql 修改root密码的方法分
- 你记得root密码 希望 换一个新密码
mysql -uroot -p
登陆后
ALTER USER 'root'@'localhost' IDENTIFIED BY 'password4you!';
- 忘记了root密码
vi /etc/my.cnf
在文件末尾加上skip-grant-tables
重启mysql :service mysqld restart
在 skip-grant-tables设置下键入mysql就可以进入mysql
这时候就无法使用上面 ALTER USER xxxx 的方式修改密码了,会提示 The MySQL server is running with the –skip-grant-tables option so it cannot execute this statement
这时我们如下操作
mysql> USE mysql ;
mysql> UPDATE user SET Password = password ( 'new-password' ) WHERE User = 'root' ;
mysql> flush privileges ;
mysql> quit
在5.7以前如上就可以了,5.7以后user表字段有些变化 需要将 UPDATE 语句改为
update user set authentication_string=password('123456') where user='root';
日志配置 vim /etc/my.cnf
general_log=1
general_log_file="/learn/log/mysql_general.log"
slow_query_log = 1
long_query_time = 1
slow_query_log_file ="/learn/log/slow_querys.log"
基本上只有慢查询的配置与以前不同 设置完后需要自己创建日志文件 并将属主属组 更改为mysql 然后重启服务
错误处理
一般出错会导致服务启动不成功 会提示 See “systemctl status mysqld.service” and “journalctl -xe” for details. 但是一般看不出什么 。直接在 less /var/log/mysqld.log 看错误
Nginx
自带的yum里好像没有nginx,但是安装php的yum中有nginx所以就不用官方的预建包安装 就使用yum安装了(yum install nginx
)。
nginx 很久没装了,等再整理一下再继续
开机自启动使用比较暴力的方法
vim /etc/rc.local
插入
service mysqld start
service php-fpm start
service nginx start