MySQL8新特性及升级注意点
MySQL8引入了一些新特性,也有一些改动,升级的时候要注意下。
Authentication 身份认证
身份认证时默认使用的是`caching_sha2_password`,而之前的版本是`mysql_native_password`,老的程序不兼容,比如MySQL管理工具`Sequel Pro`等。
Home of Little Jelly
MySQL8引入了一些新特性,也有一些改动,升级的时候要注意下。
Authentication 身份认证
身份认证时默认使用的是`caching_sha2_password`,而之前的版本是`mysql_native_password`,老的程序不兼容,比如MySQL管理工具`Sequel Pro`等。
PHP要使用XdevAPI扩展连接MySQL8,首先要安装MySQL8,而且需要为PHP安装配置`mysql_xdevapi`扩展,见之前的教程[PHP8安装MySQL xdevapi扩展](https://www.pimspeak.com/php8-mysql-xdevapi-extension.html)。
装好之后就可以连接了。
示例代码
Nginx PHP安全配置
1. 错误显示
配置php.ini
要在PHP中使用MySQL8的文档存储Document Store,需要配置`mysql_xdevapi`扩展。配置过程比较复杂,依赖颇多,详细步骤如下。
环境:CentOS8 + PHP8 + MySQL8
首先安装gcc
Docker下的CentOS8安装php7和php8版本,php-fpm都启动不起来,报错
php-fpm: error while loading shared libraries: libonig.so.5: cannot open shared object file: No such file or directory failed
在Docker中使用MySQL还是很方便的。
MySQL 5.7版本创建命令
MySQL默认只能从本机访问,如果要允许用户外网访问,需要修改相关权限。 先使用MySQL自带的终端命令登录 mysql -uroot -p 成功后切数据库mysql,并为相关用户修改权限,这里以root为例 use mysql; update user set Host='%' where Host='localhost'; grant all privileges on *.* to 'root'@'%'; flush privileges; 执行完后就可以外网访问了。 点击量: 474
借助[SabreDav](https://sabre.io/dav/)的开源库,PHP可以同时作为WebDav Server和Client,而且操作非常方便。
作为Server,可以提供WebDav服务对外使用。
作为Client,则可以作为客户端与支持WebDav的服务器交互。
有了它,远程操作文件又多了一种选择,包括但不限于
文件传输备份经验总结
文件传输协议
1. FTP/FTPS/SFTP
2. SSH
3. SCP
4. WebDav
5. NFS (Linux,用于NAS等)
6. SMB (Windows,用于Samba等)
苹果系统上很多APP支持跨设备同步,实现方式不一,有的是用iCloud,有的是用自建的同步服务器,但速度不是太理想,延迟较高。
就拿我常用的OmniFoucs来说,用的是Omni免费的同步服务,同步一次要几十秒,经常出现早上在电脑改了状态,手机上晚上还没同步过来的情况。好在OmniFoucs支持自定义的WebDav服务,加之本人有台国内服务器,就自建了一个WebDav服务,迁移之后基本上秒同步,爽!