腾讯云centos安装mysql

   腾讯云centos里面安装mysql采用安装包的方式尝试了一晚上,报各种错误,反正不行,没办法,只能装集成包,但是因为是国外的资源,所以下载有点慢,步骤如下

  1. 首先,我们检测一下系统中是否已安装mysql的相关服务

     

    命令: rpm -qa | grep mysql,无输出则证明未安装

  2. 然后我们使用yum检测查找系统自带的mysql安装文件。

    CentOS7的yum源中未找到mysql服务。所以,我们要先下载mysql的repo源。

    下载命令:wget http://repo.mysql.com/mysql-community-release-el7-5.noarch.rpm

  3. 下载完成!接下来我们安装mysql-community-release-el7-5.noarch.rpm包

    安装命令:sudo rpm -ivh mysql-community-release-el7-5.noarch.rpm

  4. 安装mysql-community-release-el7-5.noarch.rpm包完成,安装这个包后,会获得两个mysql的yum repo源:/etc/yum.repos.d/mysql-community.repo,/etc/yum.repos.d/mysql-community-source.repo.

     

  5. 接下来我们开始安装mysql

     

    安装命令:sudo yum install mysql-server

  6. 按步骤安装完就可以了,成功安装之后重启mysql服务

    重启命令:service mysqld restart

    7、这个时候就要设置密码了,但是怎么设置密码了?

      方法一:不一定可以,反正我尝试了很多次,是失败了

         设置密码的方法

         依次输入命令并回车:

            mysql -u root

             mysql> set password for ‘root’@‘localhost’ = password('mypasswd');

            mysql> exit

 

       方法二:用这种方法搞定了

假设我们使用的是root账户。

1.重置密码的第一步就是跳过MySQL的密码认证过程,方法如下:

#vim /etc/my.cnf(注:windows下修改的是my.ini)

在文档内搜索mysqld定位到[mysqld]文本段:
/mysqld(在vim编辑状态下直接输入该命令可搜索文本内容)

在[mysqld]后面任意一行添加“skip-grant-tables”用来跳过密码验证的过程,如下图所示:

保存文档并退出:

#:wq
2.接下来我们需要重启MySQL:

/etc/init.d/mysql restart(有些用户可能需要使用/etc/init.d/mysqld restart)

3.重启之后输入#mysql即可进入mysql。

 

4.接下来就是用sql来修改root的密码

mysql> use mysql;
mysql> update user set password=password("你的新密码") where user="root";
mysql> flush privileges;
mysql> quit

到这里root账户就已经重置成新的密码了。

5.编辑my.cnf,去掉刚才添加的内容,然后重启MySQL(service mysqld restart)。大功告成!

 

八、接下来就是最后一步了,真是一波三折,最后一步是开放3306端口,并保存在防火墙

使用iptables防火墙; 开放端口
关闭firewall:  systemctl stop firewalld.service
若没安装iptables: 
查看是否安装iptables: systemctl status iptables.service
安装iptables:  yum install -y iptables 
安装iptables-service:  yum install iptables-services
 添加规则:
编辑防火墙配置文件: vi /etc/sysconfig/iptables
添加端口如下:  -A INPUT -p tcp -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT

(MySQL能够进行远程访问,需要在开启 iptables防火墙的情况下。tomcat也同理)

-A INPUT -p tcp -m state --state NEW -m tcp --dport 3306 -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 8080 -j ACCEPT

保存配置: service iptables save 
重启防火墙: systemctl restart iptables.service
设置开机启动: systemctl enable iptables.servcie 
3. 配置MySQL--(如何安装启动点击该链接)
进入MySQL: mysql -u root  -p 


配置远程访问权限:(远程登录的用户名为 root ,密码为 password )
控制台执行语句1: GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'password' WITH GRANT OPTION;

奈何又报错了

网上查了下资料,神坑,退出下mysql,修复对应的报错即可

mysql_upgrade -u root -p 密码,修复后,终于又好了,可以下一步了
控制台执行语句2: FLUSH PRIVILEGES;
4. 最后使用MySQL客户端去连接腾讯云mysql服务器,汗,又报错,这次错,更坑

MySQL报错:Mysql Native table 'performance_schema'.'session_variables' has the wrong structure

还好这年底有百度可查,更改下系统参数即可

注意退出mysql执行哟

 set @@global.show_compatibility_56=ON;

因为改了系统参数,那肯定要重启mysql了

最后执行service mysqld restart

 

 

 

 

注意腾讯云服务器连接要用外网地址,ifconfig之类查到地址的肯定是不行的

终于大工告成,真心不易,呕心沥血终于装好,怕以后又碰到这样的问题,还是记录下来,共勉之。