centos7 安装mysql以及常见问题的解决

在centos7上安装mysql非常简单。


首先下载Yum源的rpm包

具体地址在:

http://repo.mysql.com/

可以选择自己需要的版本。

我下载的是:

wget http://repo.mysql.com/mysql57-community-release-el7.rpm

1、安装rpm文件

通过命令,安装MySQL的YUM源:

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

可以在/etc/yum.repos.d中看到相关的repo文件:

[root@localhost yum.repos.d]# ls

CentOS-Base.repo CentOS-Debuginfo.repo CentOS-Media.repo CentOS-Vault.repo mysql-community-source.repo

CentOS-CR.repo CentOS-fasttrack.repo CentOS-Sources.repo mysql-community.repo OpenLogic.repo

[root@localhost yum.repos.d]#

1、YUM安装MySQL

通过yum命令安装:

yum install -y mysql-server

等待安装完成

启动:

Systemctl start mysqld

查看:

Systemctl status mysqld

设置开机启动:

Systemctl enable mysqld


当你安装完以后,启动服务时你有可能会遇到一些问题:

1、启动报错

Starting mysqld (via systemctl):  Job for mysqld.service failed because the control process exited with error code. See "systemctl status mysqld.service" and "journalctl -xe" for details.
                                                           [FAILED]

报这个错,网上很多解决方案都说要这啊那的。但很多都没有卵用。其实这个问题很多情况下没有那么复杂,就是文件夹权限的问题。(当然这里不保证全部都是。反正我是这样解决的)

首先查找你安装的mysql位置

[root@localhost ~]# which mysql

/usr/bin/mysql


然后赋予权限就可以

/usr/bin/mysql r

/usr/bin/mysql/** rwk

或者直接给777权限:

chmod -R 777 /usr/bin/mysql

重启: sudo service apparmor restart

然后就可以正常启动mysql服务了。


2、登录不了root用户

  1. [root@localhost opt]# /usr/bin/mysql -u root  
  2. ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)  

网上的几种解决方案,然而并没有什么卵用

  1. 方案一:  
  2. mysqladmin -u root password 123456,结果提示错误:error: 'Access denied for user 'root'@'localhost' (using password: NO)'  
  3.   
  4. 方案二:  
  5. 用mysqld_safe skip-grant-tables进入mysql,然后sql语句修改root密码,还是提示错误:-bash: mysqld_safe: command not found  

解决:

1、现在mysql安装一般都会给root随机初始化一个密码,所以我们要先找到这个密码:

  1. [root@localhost opt]#  cat /var/log/mysqld.log  | grep password  
  2. 2016-07-16T05:01:47.771362Z 1 [Note] A temporary password is generated for root@localhost: q.)ti!Yage6y-  
  3. 2016-07-16T05:02:32.000199Z 2 [Note] Access denied for user 'root'@'localhost' (using password: NO)  
  4. 2016-07-16T05:02:39.063852Z 3 [Note] Access denied for user 'root'@'localhost' (using password: NO)  

看到没,密码就是: q.)ti!Yage6y-


2、重新连接mysql:

  1. [root@zzs171 opt]# /usr/bin/mysql -u root -p  
  2. Enter password:  

输入上面的密码就能进入root用户了。但是这个密码好复杂,自己修改一下

3、修改登录密码

  1. SET PASSWORD FOR 'root'@'localhost' = PASSWORD('Mysqlpassw0rd.');  


注意密码不要太简单,否则会报错。因为mysql有检测密码强度

  1. mysql> SET PASSWORD FOR 'root'@'localhost' = PASSWORD('123');  
  2. ERROR 1819 (HY000): Your password does not satisfy the current policy requirements 

4、如果远程登录报错Host isnot allowed to connect to this mysql server

在装有MySQL的机器上登录MySQL mysql -u root -p密码

执行use mysql;

执行update user set host = '%' where user ='root';这一句执行完可能会报错,不用管它。

执行FLUSH PRIVILEGES;

经过上面4步,就可以解决这个问题了



然后自己耍吧。


  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值