安装MySQL
-
打开终端,并以 root 用户身份登录。
-
运行以下命令以更新系统软件包:
yum update
-
安装 MySQL 服务器和客户端软件包。运行以下命令:
yum install mysql-server mysql
-
安装完成后,启动 MySQL 服务并设置它在系统启动时自动启动。运行以下命令:
systemctl start mysqld systemctl enable mysqld
-
运行以下命令来确保 MySQL 服务正在运行:
systemctl status mysqld
如果服务正在运行,你将看到类似以下输出:
● mysqld.service - MySQL Server Loaded: loaded (/usr/lib/systemd/system/mysqld.service; enabled; vendor preset: disabled) Active: active (running) since Tue 2021-09-28 15:27:01 EDT; 3min 42s ago
-
默认情况下,MySQL 安装后会生成一个临时的 root 用户密码。运行以下命令来找到这个密码:
grep 'temporary password' /var/log/mysqld.log
输出将类似于:
[Note] [MY-010454] [Server] A temporary password is generated for root@localhost: xxxxxxxx
将
xxxxxxxx
替换为实际的临时密码。 -
运行以下命令来设置 MySQL root 用户的密码。将
<new-password>
替换为你想要设置的新密码,并将<temporary-password>
替换为前面找到的临时密码:mysql_secure_installation
根据提示进行操作,包括输入临时密码、设置新密码以及回答其他安全相关的问题。
-
安装完成后,你可以使用 MySQL 客户端连接到 MySQL 服务器:
mysql -u root -p
输入之前设置的新密码,然后你将进入 MySQL 的交互式命令行界面。
安装完成后,你就可以在 CentOS 上使用 MySQL 了。根据你的需求和用途,你可以进一步配置和管理 MySQL 数据库。
远程访问
远程访问之前要打开端口
firewall-cmd --query-port=3306/tcp #查看防火墙是否已开放3306端口
#注:可以是一个端口范围,如1000-2000/tcp
firewall-cmd --add-port=3306/tcp --permanent #设置3306端口为永久开放
systemctl status firewalld #查看firewalld状态,发现当前是dead状态,即防火墙未开启
systemctl stop firewalld #关闭防火墙
systemctl status firewalld #重启防火墙
服务器的安全组要开发3306
mysql -u root -p
Enter password: #输入密码
use mysql;
update user set host = '%' where user = 'root'; #给root所有ip访问,此法有点危险,
FLUSH PRIVILEGES; #刷新
创建用户
#查看用户权限
use mysql;
SELECT User, Host, Select_priv, Insert_priv, Update_priv, Delete_priv, Create_priv, Drop_priv, Grant_priv, Super_priv FROM user;
# 可以多个CREATE创建一个用户,就会有多个远程ip能访问到,这就是指定ip访问访问用户
CREATE USER 'xiang'@'IP地址' IDENTIFIED WITH mysql_native_password BY 'xiang';
#赋予全部权限
GRANT ALL PRIVILEGES ON *.* TO 'xiang'@'ip地址' WITH GRANT OPTION;
FLUSH PRIVILEGES; #刷新,否则无效