MySQL 用户管理
用户格式如:
username@'host' identified by 'password'创建用户并设置密码
username@'10.0.0.158/255.255.255.0' 指定ip
username@'10.0.0.%' %通配符 为10网段 一般用这个
创建用户:create user test@'10.0.0.%' identified by '123456';
如果不跨网段只在本机使用:create user test@'localhost' identified by '123456';
创建好的用户和密码放在mysql数据库的user表中,其中user,host,authentication_string三个字段存放信息
远程连接数据库:
mysql -utest -p123456 -h10.0.0.8
status可以查看谁连接到10.0.0.8
查看谁在连接数据库:show processlist;
用户重命名:rename user 老名字 to 新名字
删除用户:drop user username@'host'
修改密码:alter user root@'localhost' identified by '密码'
清除空账号:drop user ''@'localhost';
忘记管理员密码的解决办法:5.7和8.0(无特殊紧急情况下不要动,因为有些服务在使用账号和密码连接mysql)
第一步:修改配置文件
vim /etc/my.cnf
[mysqld]
skip-grant-tables #在启动之后,用户连接mysql,忽略密码验证
skip-networking #MySQL8.0不需要,老版本如果不加此项,远程连接也不需要密码
systemctl restart mysqld
第二步:进入mysql程序
刷新权限:flush privileges;
设置密码:alter user root@'localhost' identified by '123456';
注释配置文件
vim /etc/my.cnf
[mysqld]
#kip-grant-tables
#kip-networking
权限管理和DCL语句 (数据控制语言)
授权:grant
grant all on wordpress.* to wordpress@'10.0.0.%'; 授权给用户wordpress数据库的所有权限
grant all on *.* to root@'10.0.0.%' with grant option;授权给用用户所有权限并它可以把权限给别人
取消权限:revoke
revoke delete on *.* from 'teachers'@'10.0.0.%';
查看指定用户获得的授权
show grants for 'user'@'host';
常见图形化管理工具:
Nanicat SQLyog DBeaver https://dbeaver.io/(最后一个为开源免费的)
编译型将源码编译成二进制格式文件,运行二进制文件 执行快
解释性:基于源码运行 运行效率高
PHP 简介
PHP官网:http://www.php.net/
/etc/php.ini配置文件格式:
[foo]:section header
directive=value
php常见设置:
expose_php = On #响应报文显示首部字段x-powered-by: PHP/x.y.z,暴露php版本,建议为off max_execution_time= 30 #最长执行时间30s
memory_limit=128M #生产不够,可调大
display_errors=off #调试使用,不要打开,否则可能暴露重要信息
display_startup_errors=off #建议关闭
post_max_size=8M #最大上传数据大小,生产可能调大,比下面项大
upload_max_filesize =2M #最大上传文件,生产可能要调大
max_file_uploads = 20 #同时上传最多文件数
date.timezone = Asia/Shanghai #指定时区
short_open_tag = On #支持短标签
搭建博客(生产中不会把php和apache分开,mysql单独放一台主机)
web层:接收用户请求
业务数据处理层:程序(php)
存储数据层:mysql
第一台机器:作为MySQL数据库
安装mysql并启动
新增数据库
create database wordpress;
新增账号和密码
create user wordpress@'10.0.0.%' identified by '654321';
赋予wordpress账户wordpress数据库的所有权限
grant all on wordpress.* to wordpress@'10.0.0.%';
第二台机器:接收客户请求信息(安装 apache 和 PHP)
1.安装PHP语言程序(程序服务器)解释型语言
如果是rocky系统,安装以下包
yum -y install httpd php php-mysqlnd php-json
启动服务
systemctl enable --now httpd
如果是ubuntu系统,安装以下包
apy -y install apache2 php php7.4-mysql php7.4-json
启动服务
systemctl enable --now apache2
2.修改配置文件
vim /etc/php/7.4/apache2/php.ini
post_max_size = 80M (上传照片大小)
upload_max_filesize = 100M (上传数据大小)
systemctl restart apache2
写入测试内容
cd /var/www/html
vim index.html
3.DNS服务解析
(没有域名,不解析,直接输ip)
4.从网页上通过域名搜索测试
5.连接数据库需要下载php-mysqlnd,第一步已一次性安装
6.下载wordpress
wget https://cn.wordpress.org/latest-zh_CN.tar.gz
解压缩到当前目录
tar xf wordpress-6.0.1-zh_CN.tar.gz -C /opt/ (版本太高,建议使用Ubuntu)
切入到下面目录下,并把内容移动到/var/www/html/下
cd opt/wordpress/
mv * /var/www/html/
修改权限属性:
rocky为apache
chown -R apache.apache /var/www/html
ubuntu修改为
chown -R www-data.www-data /var/www/html
7.在浏览器输入网址或者ip,填写数据库信息
实现基于LAMP架构的类京东电商网站实战案例
电商网站软件说明
ShopXO 安全,稳定,高性能企业级B2C开源电商系统,基于php开发 遵循MIT开源协议发布,无需授权,可商用,可二次开发,满足99%的电商运营需求,安装超过100万+ 官方网站:http://shopxo.net
安装过程(生产中不会把php和apache分开,mysql单独放一台主机)
1.第一台机器配置php和httpd
yum -y install httpd php php-mysqlnd php-json php-gd php-xml php-pecl-zip
systemctl enable --now httpd
下载shopxo:https://shopxo.net
tar xf shopxo-v2.2.3.tar.gz -C /opt/
cd /opt/shopxo-2.2.3
mv * /var/www/html/
chown -R apache.apache /var/www/html/修改权限属性
2.第二台机器配置mysql
mysql -p123456
create database shopxo;创建数据库
create user shopxo@'10.0.0.%' identified by '123456';创建用户
grant all on shopxo.* to shopxo@'10.0.0.%' ;对用户授权
3.在浏览器输入网址或者ip,填写数据库信息
安装好之后,在第一台机器删除 /var/www/html/app.install目录,防止重新安装
如果mysql是rocky,web服务是ubuntu时,连不上,有可能是双方的的密码验证方法版本不一样
ubuntu上采用的是最新版的密码验证方法,rocky上是老的密码验证方法,改成一样的即可解决问题
查看验证密码验证方法命令:
rocky:
mysql> select @@default_authentication_plugin;
mysql_native_password
ubuntu:
mysql> select @@default_authentication_plugin;
caching_sha2_password
修改ubuntu的密码验证方法:
[mysqld]
default_authentication_plugin=mysql_native_password
php加速(opcache)
压力测试工具apt install apacher2-utils
测试ab -c 10 -n 50 ip并发10个,总共50个。
如:ab -c 10 -n 50 10.0.0.8
测试非加速状态下,每秒并发30个
安装加速工具:apt -y install php-opcache
vim /etc/opt/remi/php74/php.d/10-opcache.ini
opcache.enable=0 默认开启opache加速,修改为0表示关闭,测试性能变化
systemctl restart php74-php-fpm.service
再次测试加速状态下,每秒并发60个
论坛搭建安装包下载地址:discuz
服务器租用托管,机房租用托管,主机租用托管,https://www.e1idc.com