centos在线安装最新版mysql5.7

一、检查系统中是否装有Mysql  (否则直接执行第三步,下载安装)

rpm -qa | grepmysql 或者:rpm -qa | grep -imysql // 这个命令就会查看该操作系统上是否已经安装了mysql数据库

[zcp@localhost ~]$ rpm -qa | grep mysql
mysql-libs-5.1.71-1.el6.x86_64

很明显小编的系统里已经安装了mysql5.1.71

二、删除卸载原有的Mysql

通过 rpm-e 命令 或者 rpm -e--nodeps 命令来卸载掉,注意两个命令后面是你的mysql-libs-5.1.71-1.el6.x86_64名称版本号

[zcp@localhost ~]$ rpm -e mysql  // 普通删除模式
[zcp@localhost ~]$ rpm -e --nodeps mysql  // 强力删除模式,如果使用上面命令删除时,提示有依赖的其它文件,则用该命令可以对其进行强力删除

如果你不是通过rpm安装的肯定返回错误,说明没有rpm包。

error: package mysql is not installed

如果是yum安装的我们使用下面的命令:

yum -y remove mysql-libs-5.1.71-1.el6.x86_64

如果返回 You needto be root to perform this command.
说明你需要root权限,在终端,输入su回车,然后输入密码回车就行了!密码是不显示的。

[zcp@localhost ~]$ su
Password: 

再次执行删除命令

yum -y remove mysql-libs-5.1.71-1.el6.x86_64
 
  
centos在线安装最新版mysql <wbr>5.7



 
  
 
  

最后返回如果看到下面的信息:

......
Removed:
  mysql-libs.x86_64 0:5.1.71-1.el6                                              

Dependency Removed:
  cronie.x86_64 0:1.4.4-12.el6        cronie-anacron.x86_64 0:1.4.4-12.el6      
  crontabs.noarch 0:1.10-33.el6       postfix.x86_64 2:2.6.6-2.2.el6_1          
  sysstat.x86_64 0:9.0.4-22.el6      

Complete!

删除成功!
再次查看

[root@localhost ~]# rpm -qa | grep mysql
[root@localhost ~]# 

三、给CentOS添加rpm源,并且选择较新的源命令(未安装过mysql的直接利用在线源下载community版本安装)


首先需要先更新yum指令   更新yum源到最新

shell> yum update

 
(CentOS7的yum源中默认好像是没有mysql的。为了解决这个问题,我们要先下载mysql的repository源 mysql57-community-release-el7-11.noarch.rpm,然后通过源来在线安装server)
或者直接下载 server
wget https:/cdn.mysql.com/Downloads/MySQL-5.7/mysql-community-server-5.7.19-1.el7.x86_64.rpm

(2017-09-18 最新版本地址)
wget https:/repo.mysql.com/mysql57-community-release-el7-11.noarch.rpm

# yum localinstall mysql57-community-release-el7-11.noarch.rpm  

=====================这部分不需要====start=====================================
# yum repolist all | grep mysql 

# yum-config-manager --disable mysql55-community 

# yum-config-manager --disable mysql56-community
# yum-config-manager --enable mysql57-community-dmr 

 
  
============================这部分不需要=====end====================================
# yum repolist enabled | grep mysql

检查mysql源是否安装成功
shell> yum repolist enabled | grep "mysql.*-community.*"
centos在线安装最新版mysql <wbr>5.7



 看到上图所示表示安装成功。

可以修改vim /etc/yum.repos.d/mysql-community.repo源,改变默认安装的mysql版本。比如要安装5.6版本,将5.7源的enabled=1改成enabled=0。然后再将5.6源的enabled=0改成enabled=1即可。改完之后的效果如下所示: 
centos在线安装最新版mysql <wbr>5.7



四、安装mysql 服务

 
  
# yum install mysql-community-server

一直选择“y”

Install       4 Package(s)

Total download size: 169 M
Installed size: 842 M
Is this ok [y/N]: y

在线下载较慢


五、启动mysql

# service mysqld start
 
  
centos在线安装最新版mysql <wbr>5.7

查看MySQL的启动状态

shell> systemctl status mysqld

centos在线安装最新版mysql <wbr>5.7

六、开启自启动命令:

 
systemctl enable mysqld
 
  

七、mysql安全设置命令:

mysql安装完成之后,在/var/log/mysqld.log文件中给root生成了一个默认密码。通过下面的方式找到root默认密码,然后登录mysql进行修改:



  shell>grep 'temporary password'      /var/log/mysqld.log





centos在线安装最新版mysql <wbr>5.7
修改密码:

# mysql_secure_installation  
centos在线安装最新版mysql <wbr>5.7



 
  
 
  

八、关于用户的安全策略及配置

通过msyql环境变量可以查看密码策略的相关信息:
mysql> show variables like '%password%';
mysql密码策略 
validate_password_policy:密码策略,默认为MEDIUM策略 
validate_password_dictionary_file:密码策略文件,策略为STRONG才需要 
validate_password_length:密码最少长度 
validate_password_mixed_case_count:大小写字符长度,至少1个 
validate_password_number_count :数字至少1个 
validate_password_special_char_count:特殊字符至少1个 
上述参数是默认策略MEDIUM的密码检查规则。 共有以下几种密码策略:
策略 检查规则
0 or LOW Length
1 or MEDIUM Length; numeric, lowercase/uppercase, and special characters
2 or STRONG Length; numeric, lowercase/uppercase, and special characters;dictionary file
MySQL官网密码策略详细说明:http://dev.mysql.com/doc/refman/5.7/en/validate-password-options-variables.html#sysvar_validate_password_policy

修改密码策略

=======================设置======不需要密码策略 ================================
如果不需要密码策略,添加my.cnf(默认路径/etc/my.cnf )文件中添加如下配置禁用即可:
validate_password = off

=======================设置======某个级别的密码策略 ================================
在/etc/my.cnf文件添加validate_password_policy配置,指定密码策略
# 选择0(LOW),1(MEDIUM),2(STRONG)其中一种,选择2需要提供密码字典文件 (默认为MEDIUM)
validate_password_policy=0
=========================================================================================
重新启动mysql服务使配置生效:
systemctl restart mysqld


九、更改或添加远程登陆用户

默认只允许root帐户在本地登录,如果要在其它机器上连接mysql,必须修改root允许远程连接,更改当前用户,使之具有远程登陆权限:

mysql  update user set host ='%' where user='root';

mysql   flush privileges;

或者添加一个允许远程连接的帐户,为了安全起见,我添加一个新的帐户:


mysql> GRANT ALL PRIVILEGES ON *.* TO 'yangxin'@'%' 

IDENTIFIED  BY 'Yangxin0917!' WITH GRANTOPTION;

十、配置默认编码为utf8 

修改/etc/my.cnf配置文件,在[mysqld]下添加编码配置,如下所示:
[mysqld]
character_set_server=utf8
init_connect='SET NAMES utf8'
重新启动mysql服务,查看数据库默认编码如下所示:

mysql默认编码

默认配置文件路径: 
配置文件:/etc/my.cnf 
日志文件:/var/log//var/log/mysqld.log 
服务启动脚本:/usr/lib/systemd/system/mysqld.service 
socket文件:/var/run/mysqld/mysqld.pid
 
  

十一、root用户无密码登录(需要修改配置文件,忘掉密码可以用此方法):

==========================================
 
   
==========================================
==========================================
               关于登录(提供一种无密码登陆方式,可以不用看================================ ==========
 
  
==============================================================================================================================
#mysql -uroot
Access denied for user 'root'@'localhost' (using password: NO) denied for user 'root'@'localhost' (using password: NO)
 
  
# service mysqld stop

#cd /usr/bin/ 

# mysqld_safe --user=mysql --skip-grant-tables 

update user set authentication_string = password('root') where user = 'root';

# service mysqld restart



You must reset your password using ALTER USER statement before executing this statement.
1.      set password = password('rootABC123_');
新版本必须包含 数字,大写字母,小写字母,特殊符号(比如下划线)
2.      ALTER USER 'root'@'%' PASSWORD EXPIRE NEVER;
3.      flush privileges;
4.     mysql -uroot -p'rootABC123_'    ;


centos在线安装最新版mysql <wbr>5.7









 
  
 
  
 
 
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值