赞
踩
MySQL 是一个开源的关系型数据库管理系统(RDBMS),由瑞典 MySQL AB 公司开发,后被 Oracle 公司收购。MySQL 使用 SQL(Structured Query Language)作为查询语言,并提供了强大的功能和性能,被广泛应用于各种 Web 应用程序和企业级应用程序中。
以下是 MySQL 的一些主要特点和优势:
**开源和免费:**MySQL 是开源软件,可以免费使用,并且有一个活跃的开源社区支持和维护它。
**跨平台:**MySQL 可以在多种操作系统上运行,包括 Linux、Windows、macOS 等。
**高性能:**MySQL 是一个高性能的数据库系统,能够处理大量的并发连接和请求,并且具有优化查询和存储引擎等功能。
**可靠性和稳定性:**MySQL 是一个稳定可靠的数据库系统,拥有成熟的架构和可靠的数据存储机制,能够保证数据的安全性和完整性。
**可扩展性:**MySQL 支持水平和垂直扩展,可以轻松地扩展以满足不同规模和需求的应用程序。
**丰富的功能:**MySQL 提供了丰富的功能和工具,包括事务处理、存储过程、触发器、索引、备份和恢复等功能,能够满足各种复杂的业务需求。
**广泛的应用:**MySQL 被广泛应用于 Web 开发、企业级应用程序、云计算、大数据等领域,是世界上最流行的数据库管理系统之一。
总的来说,MySQL 是一个强大、稳定、可靠且易于使用的关系型数据库管理系统,适用于各种规模和类型的应用程序开发。
没有安装brew的,可以参考mac安装Homebrew
要通过 Homebrew 安装并启动 MySQL,以及设置远程登录,可以按照以下步骤进行:
brew install mysql
brew services start mysql
mysql_secure_installation
mysql -u root -p
然后输入你之前设置的 root 密码。
接着,使用以下 SQL 命令允许 root 用户从远程主机登录:
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'your_password' WITH GRANT OPTION;
FLUSH PRIVILEGES;
将 ‘your_password’ 替换为你想要设置的密码。
注意:
从 MySQL 8 开始,您不再可以(隐式)使用该GRANT命令创建用户。请改用CREATE USER,后跟GRANT语句:
CREATE USER ‘root’@‘%’ IDENTIFIED BY ‘your_password’;
GRANT ALL PRIVILEGES ON . TO ‘root’@‘%’ WITH GRANT OPTION;
FLUSH PRIVILEGES;
my.cnf
,该文件通常位于 /usr/local/etc/my.cnf
或 /etc/my.cnf
。如果不存在,可以根据需要创建该文件。sudo open -e /usr/local/etc/my.cnf
[mysqld]
bind-address = 0.0.0.0
这会将 MySQL 绑定到所有可用的 IP 地址,允许远程访问。
brew services restart mysql
**登录 MySQL 并创建远程用户:**现在,你可以使用 MySQL 客户端登录到 MySQL 服务器,并创建一个允许远程访问的用户。
mysql -u root -p
remote_user
,并授予该用户远程登录和所有权限:CREATE USER 'remote_user'@'%' IDENTIFIED BY 'your_password';
GRANT ALL PRIVILEGES ON *.* TO 'remote_user'@'%' WITH GRANT OPTION;
FLUSH PRIVILEGES;
将 'your_password'
替换为你想要设置的密码。
报错:ERROR 1819 (HY000): Your password does not satisfy the current policy requirements
原因:自定义密码太简单,出现了不符合密码策略的问题
查看mysql 初始的密码策略
SHOW VARIABLES LIKE 'validate_password%';
如果遇到
ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executing this statement.
修改策略,及密码长度
set global validate_password.policy=0;
set global validate_password.length=1;
validate_password_policy取值
0 or LOW 只验证长度
1 or MEDIUM 验证长度、数字、大小写、特殊字符
2 or STRONG 验证长度、数字、大小写、特殊字符、字典文件
报错:Authentication plugin ‘caching_sha2_password’ cannot be loaded
错误信息:
MySQL said: Authentication plugin 'caching_sha2_password' cannot be loaded: dlopen(/usr/local/lib/plugin/caching_sha2_password.so, 0x0002): tried: '/usr/local/lib/plugin/caching_sha2_password.so' (no such file), '/usr/local/Cellar/mysql/8.3.0_1/lib/plugin/caching_sha2_password.so' (no such file)
原因:
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'yourpassword';
sudo open -e /usr/local/etc/my.cnf
[mysqld]
default_authentication_plugin=mysql_native_password
mysql -u remote_user -p -h your_mysql_server_ip
替换 'your_mysql_server_ip'
为你的 MySQL 服务器的 IP 地址。输入远程用户的密码,如果一切设置正确,你应该能够成功登录到 MySQL 服务器。
这样,你就完成了通过 Homebrew 安装并设置远程登录到 MySQL 服务器的过程。
要通过 Homebrew 卸载 MySQL,你可以执行以下步骤:
brew services stop mysql
brew uninstall mysql
/usr/local/var/mysql/
目录下。你可以手动删除该目录及其内容,以清除 MySQL 数据文件:rm -rf /usr/local/var/mysql/
rm -rf /etc/my.cnf
rm -rf ~/Library/Caches/Homebrew/mysql*
rm -rf ~/Library/Logs/Homebrew/mysql*
sudo dscl . -delete "/Users/_mysql"
sudo dscl . -delete "/Groups/_mysql"
完成上述步骤后,MySQL 将被完全从你的 macOS 系统中卸载。请确保在删除任何文件之前备份重要数据。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。