手把手教程 | CenOS7下MySql安装部署教程,看这篇文章就足够了!
一、前言
1、本教程主要内容
-
MySQL 5.7安装(yum) -
MySQL 5.7 ROOT账号密码修改 -
MySQL 5.7基础使用与配置 -
MySQL shell管理常用语法示例(用户、权限等) -
MySQL字符编码配置
2、本教程环境信息与适用范围
-
环境信息
软件 | 版本 |
---|---|
CentOS | 7.4 Release |
MySQL | 5.7 |
-
适用范围
软件 | 版本 |
---|---|
CentOS | CentOS 6 & CentOS 7 |
MySQL | 5.7.xx |
二、MySQL安装
1、添加包
#CentOS 7
cd /home/downloads
wget https://dev.mysql.com/get/mysql57-community-release-el7-9.noarch.rpm
sudo rpm -ivh mysql57-community-release-el7-9.noarch.rpm
#CentOS 6
cd /home/downloads
wget https://dev.mysql.com/get/mysql57-community-release-el6-9.noarch.rpm
sudo rpm -ivh mysql57-community-release-el6-9.noarch.rpm
2、安装
#安装
yum install -y mysql mysql-server
#启动
systemctl start mysqld
#进入mysql-shell
mysql -u root -p
3、开放端口
#CentOS7
#开放端口
firewall-cmd --add-port=3306/tcp --permanent
#重新加载防火墙设置
firewall-cmd --reload
#CentOS6
iptables -I INPUT -p tcp --dport 3306 -j ACCEPT
iptables save
三、ROOT密码修改
#1.停用服务:
systemctl stop mysqld
#2. 设置mysql服务配置
systemctl set-environment MYSQLD_OPTS="--skip-grant-tables"
#3. 开启服务
systemctl start mysqld
#4. 登录(root)
mysql -u root
#5. 更新密码
mysql> UPDATE mysql.user SET authentication_string = PASSWORD('MyNewPassword')
-> WHERE User = 'root' AND Host = 'localhost';
mysql> FLUSH PRIVILEGES;
mysql> quit
#6. 停用服务
systemctl stop mysqld
#7. 取消之前的mysql服务设置
systemctl unset-environment MYSQLD_OPTS
#8. 启动服务
systemctl start mysqld
#9. 登录&修改密码
mysql -u root -p
mysql>SET PASSWORD = PASSWORD('New Password');
四 、用户&权限
1、创建用户&数据库
#新建用户
CREATE USER 'test'@'localhost' IDENTIFIED BY 'Test@123456';
CREATE USER 'crrc'@'localhost' IDENTIFIED BY 'Crrc@2022';
#新建数据库
CREATE DATABASE crrcdb;
#赋予指定账户指定数据库远程访问权限
GRANT ALL PRIVILEGES ON crrcdb.* TO 'crrc'@'%' identified by 'Crrc@2022';
#赋予指定账户对所有数据库远程访问权限
GRANT ALL PRIVILEGES ON *.* TO 'mvasoft'@'%' identified by 'Mvasoft@123456';
#赋予指定账户对所有数据库本地访问权限
GRANT ALL PRIVILEGES ON *.* TO 'mvasoft'@'localhost';
#刷新权限
FLUSH PRIVILEGES;
2、权限示例(mysql-shell)
#1、查看权限
SHOW GRANTS FOR 'root'@'%';
#2、赋予权限
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%';
#3、收回权限
REVOKE ALL PRIVILEGES ON *.* FROM 'root'@'%';
#4、刷新权限
FLUSH PRIVILEGES;
#5、删除用户
DROP USER 'test'@'localhost';
五、修改字符编码
1、 查找配置文件位置
[root@centos7 download]# whereis my.cnf
my: /etc/my.cnf
2、 修改配置文件
#修改配置文件
vi /etc/my.cnf
#修改1:增加client配置(文件开头)
[client]
default-character-set=utf8mb4
#修改2:增加mysqld配置(文件结尾)
#charset
character-set-server=utf8mb4
collation-server=utf8mb4_general_ci
#修改3:设置表名大小写不敏感
# 在[mysqld]下面增加一行配置
lower_case_table_names=1
#修改4:允许日期为0000-00-00 00:00:00
# 在[mysqld]下面增加一行配置
sql_mode=ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION
3、 重启mysql服务
#重启后配置即可生效
systemctl restart mysqld
六、备注
相关阅读
-
MySQL中的utf8
http://www.infoq.com/cn/articles/in-mysql-never-use-utf8-use-utf8
-
MySQL远程访问与bind-address问题
https://serverfault.com/questions/139323/how-to-bind-mysql-server-to-more-than-one-ip-address
点赞、在看、收藏三连击一下,然后再分享给需要的小伙伴!