【值得收藏】Centos7 安装mysql完整操作命令

举报
迷彩 发表于 2023/04/25 11:41:31 2023/04/25
【摘要】 前言CentOS7默认数据库是mariadb, 但是 好多用的都是mysql ,但是CentOS7的yum源中默认好像是没有mysql的。如果第一次使用Linux的童鞋可以类比下Windows的安装,步骤都一样,下载-》解压缩-》安装(可指定路径),只不过Linux是用命令安装,不是鼠标操作,而且Linux是文件系统,一切皆文件,也就是说Linux没有和Windows一样有CDE等盘符的,L...

前言

CentOS7默认数据库是mariadb, 但是 好多用的都是mysql ,但是CentOS7的yum源中默认好像是没有mysql的。

如果第一次使用Linux的童鞋可以类比下Windows的安装,步骤都一样,下载-》解压缩-》安装(可指定路径),只不过Linux是用命令安装,不是鼠标操作,而且Linux是文件系统,一切皆文件,也就是说Linux没有和Windows一样有CDE等盘符的,Linux都是以文件作为路径。最后说一句,要多动手操作

准备

准备:VMwarecentos7虚拟主机mysql资源路径:http://dev.mysql.com/get/mysql57-community-release-el7-7.noarch.rpm

实操

1.卸载  

先停掉mysql进程   没有安装过的可以直接跳过

pkill -9 mysqld


查找并列出所有被安装的MySQL rpm package

rpm -qa|grep -i mysql


使用命令 yum -y remove卸载MySQL及相关的包

yum -y remove mysql-community-client-5.6.38-2.el7.x86_64
卸载不掉的用 rpm -ev

依次卸载 直到没有


2.下载mysql的repo源

/**纠正一下,这源下载的是最新的版本  ****/

可以指定安装目录     yum --installroot=/usr/local/mysql --releasever=/ -y install mysql-server  )我没试,这样装环境变量配置都不用你管,装上直接启动就行。安装路径是默认的。


wget http://dev.mysql.com/get/mysql57-community-release-el7-7.noarch.rpm

下载完后就是一个mysql57-community-release-el7-7.noarch.rpm的文件,可以用以下命令查看该文件都包含哪些包:

rpm -qpl mysql57-community-release-el7-7.noarch.rpm

安装rpm包

rpm -ivh mysql57-community-release-el7-7.noarch.rpm

安装完上述包后,查看yum库

yum list mysql*

之后就可以用yum安装MySQL了:

yum install mysql-community-server

MySQL安装完成。查看已安装版本

mysql -V
3.设置mysql密码

1、停止mysql服务

systemctl stop mysqld.service

2、mysql配置文件修改为免密码登录。

vi /etc/my.cfg

修改

# Disabling symbolic-links is recommended to prevent assorted security risks
skip-grant-tables  #添加这句话,这时候登入mysql就不需要密码
symbolic-links=0

3、启动 mysql 服务

systemctl start  mysqld.service

修改密码

set password for root@localhost=password('123456'); or update user set authentication_string=PASSWORD("123456") where user="root";

4、以root身份登录mysql, 输入密码的时候直接回车

mysql -u root -p     #输入命令回车进入,出现输入密码提示直接回车。
mysql> set password for root@localhost = password('123456');
ERROR 1290 (HY000): The MySQL server is running with the --skip-grant-tables option so it cannot execute this statement
mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)
mysql> set password for root@localhost = password('123456'); or update user set authentication_string=PASSWORD("123456") where user="root";
Query OK, 0 rows affected, 1 warning (0.00 sec)
mysql>flush privileges; #更新权限
mysql>quit; #退出

至此,数据库安装及简单的设置就完成了

MySQL8.0

:如果你安装的是MySQL8.0以上版本,安装完成后如果登录不上,必须修改初始密码才能正常登陆使用

基本设置如下:

登录的时候密码很容易输错,所以需要先获取一个随机密码:


grep 'temporary password' /var/log/mysqld.log //生成随机密码

mysql -uroot -p //使用随机密码登陆


1.修改用户名对应的密码

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '新密码'; //修改密码

这里直接修改为123456会提示密码太弱[非要改为123456,先要修改mysql8的密码规则]

注意:密码设置必须要大小写字母数字和特殊符号(,/’;:等),否则设置失败。

修改成功后退出:quit或者exit

如果安装完之后需要通过远程终端连接,要开启MySQL的远程访问权限:

create user root@'%' identified by '你的密码';
grant all privileges on *.* to root@'%' with grant option;
ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '你的密码';
flush privileges; #更新权限
2.修改/etc/my.cnf 添加skip-grant-tables跳过验证登录
vim /etc/my.cnf 		//修改my.cnf文件
//在[mysqld]后面任意一行添加"skip-grant-tables"用来跳过密码验证的过程,保存退出。
mysql -uroot -p   //登录,不需要密码
//登录成功:
use mysql;  //切换到mysql库
select host,user,authentication_string from user;  //可以查看root用户的host及密码(加密后)
3.mysql8.0去除了password字段,更改为authentication_string
update user set authentication_string = '' where user = 'root';  
//将密码置为空,my.cnf去掉skip-grant-tables依旧可以空密码登录。
vim /etc/my.cnf 
//编辑my.cnf文件  去掉之前添加的"skip-grant-tables",依旧可以空密码登录

你还可以通过修改mysql的密码策略为LOW,然后再修改为简单密码或者空密码登陆

查看mysql的密码策略

show variables like 'validate_password%';


参数详细讲解:

validate_password.check_user_name 用户名检测
validate_password.dictionary_file 指定密码验证的文件路径;
validate_password.length 固定密码的总长度;
validate_password.mixed_case_count 整个密码中至少要包含大/小写字母的总个数;
validate_password.number_count 整个密码中至少要包含阿拉伯数字的个数;
validate_password.policy 指定密码的强度验证等级,默认为 MEDIUM;
关于 validate_password_policy 的取值:
0/LOW:只验证长度;
1/MEDIUM:验证长度、数字、大小写、特殊字符;
2/STRONG:验证长度、数字、大小写、特殊字符、字典文件;

validate_password.special_char_count 整个密码中至少要包含特殊字符的个数


set global validate_password.policy=LOW;  //设置密码强度为LOW

策略修改完后,修改密码:
alter user 'root'@'localhost' identified by 'root';     //修改密码为root,提示修改成功

以上为MySQL8.0安装完成后的简单设置和注意事项,动手实践起来吧!

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。