虚拟机的安装
mysql 错误 提示mysqli_real_connect(): The server requested authentication method unknown to the client [caching_sha2_password]并且登录不了mysql,用命令行可以登录,密码问题。
Access denied for user 'root'@'localhost' (using password:YES) 密码问题。
https://blog.ledemon.cn/?p=166 学习mysql 5.7 安装
- 报错
Job for mysqld.service failed because the control process exited with error code. See "systemctl status mysqld.service" and "journalctl -xe" for details.
需要在/etc/my.cnf
中添加
phpmyadmin
报错:配置文件现在需要一个短语密码。
在 phpMyAdmin 文件中找到一个文件“config.sample.inc.php”,这是phpMyAdmin配置文件的样本文件,我们需要把该文件复制,然后重命名为“config.inc.php”,config.inc.php是phpMyAdmin的配置文件,编辑器打开 config.inc.php 搜索下面一行代码$cfg['blowfish_secret'] = '';,将后面单引号里面随便填入个字符串即可,打开phpMyAdmin/libraries/config.default.php文件$cfg['blowfish_secret'] = '';修改为同样密码
报错:$cfg['TempDir'] (./tmp/) 读取失败且不能建立缓存, phpMyAdmin运行速度将受影响.
手动在phpmyadmin的根目录建立tmp文件,赋予读写权限即可。
-报错:mysqli_real_connect(): Headers and client library minor version mismatch. Headers:50556 Library:50637···
根据安装php版本先删除php-mysqlyum remove php-mysql,然后安装php-mysqlnd,我的php事7.2所以用yum install php72w-mysqlnd
最后killall php-fpm然后再次启动php-fpm即可
http://www.54php.cn/default/216.html linux常用命令
下载 https://www.centos.org/download/
64位 与32位区别
下一步 下一步
点击运行 -》 选择镜像 -》下面界面 -》回车
下一步 下一步
设置root 账户 以及密码
下一步 -》重启
阿里云 腾讯云 网易蜂巢
1G内存 1G带宽 一个月65左右
ifconfig ip addr vi /etc/sysconfig/network-scripts/ifcfg-xx
yum install net-tools
虚拟机 win ctrl mac
vi /etc/sysconfig/network-scripts/ifcfig-enp0s3
onboot =no 修改为 onboot =yes
service network restart
ip addr 显示内网IP地址
yum install net-tools 安装 ifconfig 这个命令可以使用
ifconfig 查看IP
替换源 http://mirrors.163.com/.help/centos.html
桥接 安装vim
cat /etc/redhat-release 查看版本信息 yum install wget 备份 mv 进入目录 wget 下载
ssh config用法 ssh 协议 安全,建立在应用层基础上的安全协议,可靠,专为远程登录会话和其他网络服务提供安全性的协议。 有效防止远程管理过程中的信息泄露问题 SSH客户端适用于多种平台
安装ssh
yum install openssh-server
启动ssh
service sshd start
设置开机运行
chkconfig sshd on
ps -ef | grep ssh
ssh 是典型的客户端和服务端的交互模式,客户端广泛的支持各个平台。 windows有很多工具可以支持ssh连接功能,如xshell putty securecrt yum install openssh-clients
ssh root@192.0.0.22 连接 账号@IP
config 为了方便批量管理多个ssh config 存放在 ~/.ssh/config 家目录 config 配置语法
ssh 端口是22
dhcp 自动获取IP地址 ssh root@192.168.2.22 cd ~/.ssh/ ls touch config vim config
设置别名后 不需要直接写 用户名@IP地址,直接使用别名就可以进行连接
优点:方便管理服务器 利用别名管理
生成公钥后另保存文件 ,然后将公钥添加到linux 服务器中
cd ~/.ssh/
touch authorized_keys 公钥 vim authorized_keys 将生成的公钥 赋值到文件中
根据公钥 免密登录
ssh 安全免密码登录 ssh key
ssh key 使用非对称加密方式生成公钥和私钥
私钥存放在本地~/.ssh 目录
公钥可以对外公开,放在服务器的~/.ssh/authorized_keys
linux 生成密钥
ssh-keygen -t rsa
ssh-keygen -t dsa
将生成的公钥 xxx.pbu 放入~/.ssh/authorized_keys 文件中。
ssh-add ~/.ssh/imooc_rsa 添加 linux 免密登录
修改ssh 端口号 vi /etc/ssh/sshd_config port 22 =>port 12345
service sshd restart
---------------------------------------------------
LINUX常用命令
软件操作命令 安装 卸载 yum yum install 服务器硬件资源和磁盘操作 CUP 文件和文件夹操作命令 系统用户操作 防火墙相关设置 提权操作 su sudo 和文件传输操作 scp ftp
内存 free -m
硬盘 df -h
负载 w/top cpu 1 5 15
cpu个数和核数 cat /proc/cpuinfo
fdisk
cpu个数和核数 cat /proc/cpuinfo
fdisk 磁盘分区
文件目录结构:
/ 根目录 /home 家目录 /tmp 临时目录
/etc 配置目录 /usr 用户程序目录
文件与文件不能重名
mkdir imooc 创建文件夹 d
touch im 创建文件 -
mkdir -p imooc/test/test1 循环创建文件夹
rm -r imooc 删除文件夹包含下面的文件
rm test.log 删除文件
rm -rf imooc 强制删除
pwd 显示当前目录
文本编辑器
dd 删除 u 撤回 G 行尾 gg 行首 yy 复制一行 p 粘贴
文件权限 421 读 写执行
tail -f 尾部读文件
grep -n 'name' imooc
:set number 显示行号
wc -l 统计行数
grep -n "test" | wc -l
-c 统计字节数。
-l 统计行数。
-m 统计字符数。这个标志不能与 -c 标志一起使用。
-w 统计字数。一个字被定义为由空白、跳格或换行字符分隔的字符串。
-L 打印最长行的长度。
-help 显示帮助信息
--version 显示版本信息
find / -name '*.conf'
find / -type f 类型是文件
find / -type d 类型是文件夹
find / -ctime -20 最近20天内更新过得文件列出
find / -type f -ctime +7 7天之前的文件
find / -type f -ctime +30
find / -type f -perm 644 -exec ls -l {}\; 权限644的文件
文件搜索查找读取
文件压缩与解压
tar
-c: 建立压缩档案
-x:解压
-t:查看内容
-r:向压缩归档文件末尾追加文件
-u:更新原压缩包中的文件
这五个是独立的命令,压缩解压都要用到其中一个,可以和别的命令连用但只能用其中一个。下面的参数是根据需要在压缩或解压档案时可选的。
-z:有gzip属性的
-j:有bz2属性的
-Z:有compress属性的
-v:显示所有过程
-O:将文件解开到标准输出
下面的参数-f是必须的
-f: 使用档案名字,切记,这个参数是最后一个参数,后面只能接档案名。
# tar -cf all.tar *.jpg
这条命令是将所有.jpg的文件打成一个名为all.tar的包。-c是表示产生新的包,-f指定包的文件名。
# tar -rf all.tar *.gif
这条命令是将所有.gif的文件增加到all.tar的包里面去。-r是表示增加文件的意思。
# tar -uf all.tar logo.gif
这条命令是更新原来tar包all.tar中logo.gif文件,-u是表示更新文件的意思。
# tar -tf all.tar
这条命令是列出all.tar包中所有文件,-t是列出文件的意思
# tar -xf all.tar
这条命令是解出all.tar包中所有文件,-t是解开的意思
压缩
tar -cvf jpg.tar *.jpg //将目录里所有jpg文件打包成jpg.tar
tar -czf jpg.tar.gz *.jpg //将目录里所有jpg文件打包成jpg.tar后,并且将其用gzip压缩,生成一个gzip压缩过的包,命名为jpg.tar.gz
tar -cjf jpg.tar.bz2 *.jpg //将目录里所有jpg文件打包成jpg.tar后,并且将其用bzip2压缩,生成一个bzip2压缩过的包,命名为jpg.tar.bz2
tar -cZf jpg.tar.Z *.jpg //将目录里所有jpg文件打包成jpg.tar后,并且将其用compress压缩,生成一个umcompress压缩过的包,命名为jpg.tar.Z
rar a jpg.rar *.jpg //rar格式的压缩,需要先下载rar for linux
zip jpg.zip *.jpg //zip格式的压缩,需要先下载zip for linux
解压
tar -xvf file.tar //解压 tar包
tar -xzvf file.tar.gz //解压tar.gz
tar -xjvf file.tar.bz2 //解压 tar.bz2
tar -xZvf file.tar.Z //解压tar.Z
unrar e file.rar //解压rar
unzip file.zip //解压zip
总结
1、*.tar 用 tar -xvf 解压
2、*.gz 用 gzip -d或者gunzip 解压
3、*.tar.gz和*.tgz 用 tar -xzf 解压
4、*.bz2 用 bzip2 -d或者用bunzip2 解压
5、*.tar.bz2用tar -xjf 解压
6、*.Z 用 uncompress 解压
7、*.tar.Z 用tar -xZf 解压
8、*.rar 用 unrar e解压
9、*.zip 用 unzip 解压
useradd 添加用户
useradd files 添加用户 /home 目录下会自动创建相对应的用户文件夹
adduser 添加用户
userdel 删除用户
userdel -r file 删除用户以及文件夹
userdel file 只会删除用户 不会删除/home下的文件夹
passwd 密码
防火墙设置 保护服务器安全 防止被人攻击 设置防火墙规则 开放80 ,22端口 443 hhtps 关闭防火墙 1、安装 yum install firewalld 2、启动 service firewalld start 3、检查状态 service firewwalld status 4、关闭或禁用防火墙 service firewalld stop/disable
ps -ef|grep firewall 查看进程 是否开启
centos 7 默认开启防火墙
service firewalld restart firewall-cmd --state 状态 firewall-cmd --version 版本 firewall-cmd --get-zones firewall-cmd --list-all-zone 所有的配置信息 firewall-cmd --query-service=ssh firewall-cmd --remove-service=ssh 删除一个服务 firewall-cmd --add-service=ssh 添加一个服务
firewall-cmd --add-service=ssh
firewall-cmd --query-port=22/tcp
文件下载 wget curl 文件上传 scp xshell visudo 可以修改用户访问权限 sudo 提权限 curl -o file.name http://www.baidu.com
scp 文件名 root@192.168.2.12:/tmp/
上传文件 基于ssh协议 冒号后是上传的路径
scp root@192.168.2.12:/tmp/test.txt ./
下载文件 文件路径 目的路径
yum install lrzsz 安装win上传下载命令
rz 上传文件
sz 下载
yum install httpd
service httpd start
service httpd stop
netstat -anp | grep 'http' 查看端口
ps -ef | grep httpd 查看进程
service firewalld stop 不能直接访问apache 可能是防火墙造成的
虚拟主机 要开启rewrite 模块
cd /etc/httpd/conf
vi httpd.conf
vi /etc/hosts
<VirtualHost *:80> ServerName www.test.com DocumentRoot /www/test/ <Directory "/www/test"> Options Indexes FollowSymLinks AllowOverride None Order allow,deny Allow From All </Directory> </VirtualHost>
setenforce 0 宽松模式 setenforce 1 强制模式
vi /etc/selinux/config
要开启rewrite
phpMyAdmin – Error
Error during session start; please check your PHP and/or webserver log file and configure your PHP installation properly. Also ensure that cookies are enabled in your browser. session_start(): open(SESSION_FILE, O_RDWR) failed: Permission denied (13)
问题原因:PHP 的 session.save_path 路径目录的权限设置不正确。
chown -R root:nginx /var/lib/php/session 所属组
vi /etc/nginx/conf.d/default.conf
nginx.conf
配置日志文件 log_format main IP地址 - 远程用户【连接时间】 状态值 发生大小 access_log /var/log/nginx/access.log main;
upstream imooc_hosts{ server 118.89.106.129:80;
server 118.89.106.129:8080;
} proxy_set_header Host www.54php.cn; proxy_pass http://118.89.106.129:80;
打印日志 log_format 配置 http://nginx.org/en/docs/http/ngx_http_log_module.html
yum install mysql-community-server service mysqld start/restart service mysqld stop
centos7 默认安装mariadb数据库
yum remove mariadn-libs.x86_64
下载源
http://dev.mysql.com/downloads/repo/yum/
安装源
yum localinstall mysql57-community-release-el7-8.noarch.rpm
默认密码 cat /var/log/mysql.log | grep 'password'
yum search mysql 查找
yum remove mariadb.x86_64
wget http://xxx mysql下载地址
yum localinstall mysql57-community-release-el7-11.noarch.rpm 安装源 yum search mysql
yum install mysql-community-server 安装mysql
cat /var/log/mysqld.log | grep password
mysql -uroot -p 密码
mysql -h127.0.0.1 -u root -p
修改数据库密码
set global validate_password_policy=0;
set global validate_password_length=1;
set PASSWORD=PASSWORD('12345678');
use mysql;
show tables;
select Host,User from user\G;
update user set host = '%' where Host='localhost' and User = 'root';
flush priviloges; 刷新权限
首先在全局设置日志记录 set global general_log_file = "/tmp/xxx.log"; set global general_log = on; // 开启日志记录
set global validate_password_policy=0; set global validate_password_length=1;
create user 'imooc'@'%' identified by '111111'; 创建用户 @权限 允许所有 密码
grant all privileages on *.* to 'imooc'@'%' identified by '12345678' with grant option; 赋予权限
flush priviloges; 刷新权限
revoke all privileages on *.* from 'imooc'@'%'; 删除权限
忘记root密码 vim /etc/my.cnf 添加 skip-grant-tables 跳过安全验证
添加上面图中, 连接数据库不需要密码。下面是更新用户密码操作。
接下来是redis和memcache的安装
PHP安装
server
{
listen 80;
server_name www.jisuluck.net;
index index.html index.htm index.php;
# root /data/wwwroot/www.xuql.com;
root /data/wwwroot/laravel56/public;
location / {
try_files $uri $uri/ /index.php?$query_string;
}
# location / {
# rewrite ^(.*)\.htmp$ /index.html;
# proxy_set_header Host www.baidu.com;
# proxy_pass http://xuql_hosts;
# }
location ~ \.php$ {
fastcgi_pass 127.0.0.1:9000;
# fastcgi_index index.php;
# fastcgi_split_path_info ^((?U).+\.php)(/?.+)$;
# fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
# fastcgi_param PATH_INFO $fastcgi_path_info;
# fastcgi_param PATH_TRANSLATED $document_root$fastcgi_path_info;
try_files $uri = 404;
include fastcgi_params;
}
查看php-fpm是否开启,listen 监听的方式;
防火墙有没有关闭
/var/log/nginx/error.log
/var/log/php-fpm/error.log fastcgi错误
php-fpm 直接运行会有报错
fastcgi_pass 这个配置 要看/etc/php-fpm.d/www.conf 这个fpm的配置文件监听的哪里;配置文件都有详细的介绍,错误可以研究配置文件的。
学好英语很重要啊!!!!!!!!!!