mysql安装配置, 添加用户,分配权限
安装MySQL
- 运行以下命令更新yum源。
rpm -Uvh http://dev.mysql.com/get/mysql57-community-release-el7-9.noarch.rpm
- 运行以下命令安装MySQL。
yum -y install mysql-community-server
- 运行以下命令查看MySQL版本号。
mysql -V
- 返回出错,可能是 GPG 密钥已过期导致的,解决再重新第三条命令即可
rpm --import https://repo.mysql.com/RPM-GPG-KEY-mysql-2022
配置MySQL
- 运行以下命令启动MySQL服务。
systemctl start mysqld
- 运行以下命令设置MySQL服务开机自启动。
systemctl enable mysqld
- 运行以下命令查看/var/log/mysqld.log文件,获取并记录root用户的初始密码。
grep 'temporary password' /var/log/mysqld.log
mysql -u root -p
登陆后修改密码
set password for root@localhost = password('123456');
其他配置
降低密码复杂度
- 查看当前密码策略
show variables like 'validate_password%';
validate_password_length #密码长度
validate_password_mixed_case_count #大小写字符个数
validate_password_number_count #数字个数
validate_password_special_char_count #特殊字符个数
- 修改命令
set global validate_password_length=6;
set global validate_password_mixed_case_count=0;
set global validate_password_special_char_count=0;
flush privileges;
- 修改密码
ALTER USER ‘root’@‘localhost’ IDENTIFIED BY ‘123456’;
不区分大小写
进入etc下面
cd /etc/
编辑my.cnf文件
vim my.cnf
最后一行加上下面一句
lower_case_table_names=1
重新启动
systemctl restart mysqld
添加新用户
允许本地 IP 访问 localhost, 127.0.0.1:
create user 'test'@'localhost' identified by '123456';
允许外网 IP 访问:
create user 'test'@'%' identified by '123456';
刷新授权 :
flush privileges;
为用户创建数据库
create database test DEFAULT CHARSET utf8 COLLATE utf8_general_ci;
为新用户分配权限
授予用户通过外网IP对于该数据库的全部权限:
grant all privileges on `testdb`.* to 'test'@'%' identified by '123456';
授予用户在本地服务器对该数据库的全部权限:
grant all privileges on `testdb`.* to 'test'@'localhost' identified by '123456';
刷新权限:
flush privileges;
退出 root 重新登录:
exit
用新帐号 test 重新登录,由于使用的是 % 任意IP连接,所以需要指定外部访问IP
mysql -u test -h 192.168.1.11 -p