我希望所有的软件包都用 rpm、yum 安装,这样卸载、升级、管理方便,可是自带的 yum 仓库里面没有 mysql-server 或者不是最新的,我需要安装MySQL官方的 yum 仓库,

http://dev.mysql.com/downloads/repo/yum/

这里有好几个版本可以选择,我根据系统版本信息选择了 mysql57-community-release-el7-8.noarch.rpm

# 系统版本信息,使用 uname -a 等命令可以查到
$ uname -a
Linux iZ23getZ 3.10.0-327.el7.x86_64 #1 SMP Thu Nov 19 22:10:57 UTC 2015 x86_64 x86_64 x86_64 GNU/Linux
# el7 就是 Red Hat Enterprise Linux 7,我选择它
wget http://dev.mysql.com/get/mysql57-community-release-el7-8.noarch.rpm

# 下载完了,是个rpm包,顺便看一下md5是否和官网的一致
md5sum mysql57-community-release-el7-8.noarch.rpm # 安装rpm包
sudo rpm -ivh mysql57-community-release-el7-8.noarch.rpm # 安装完后 sudo updatedb,使用 locate *.repo 发现多了两个 .repo文件
/etc/yum.repos.d/mysql-community-source.repo
/etc/yum.repos.d/mysql-community.repo # 其实还有一个RPM-GPG-KEY-mysql文件,这个文件必须存在,否则 yum install 的时候签名验证是不通过的。
/etc/pki/rpm-gpg/RPM-GPG-KEY-mysql
yum search mysql
# 现在应该可以安装 mysql-server 了,其实它叫做 mysql-community-server
sudo yum install mysql-server
# 初次启动
sudo service mysqld start # 查看初始密码
sudo grep "password" /var/log/mysqld.log
# 2016-08-15T03:05:45.448459Z 1 [Note] A temporary password is generated for root@localhost: k(_2aWFqQ+ve

附:

找回root密码的方法

sudo vi /etc/my.cnf
# 添加一行 skip-grant-tables sudo service mysqld restart mysql -uroot # 免密码登录 mysql> update mysql.user set authentication_string=password('123'),plugin='mysql_native_password' where user='root' and host='localhost';
# 注意 5.7 以上版本需要加上 plugin='mysql_native_password'
mysql> flush privileges; #?
mysql> exit; sudo vi /etc/my.cnf
# 注释掉 skip-grant-tables sudo service mysqld restart mysql -uroot -p # 使用123登录以后再设置一个更安全的密码,同时也避免updte语句修改密码遗漏某些过程的可能。 mysql> set password=password('d3jDe3@$jh7');

远程连接MySQL

用 putty 自带的 plink 代理工具可以通过 SSH 更安全的连接到远程Linux的 MySQL 服务(不用开启3306端口防火墙)

示例:

"K:\Program Files\putty\PLINK.EXE" -L 127.0.0.1:3344:127.0.0.1:3306 -agent web-admin@121.43.191.231 -P 22 -v

在 Windows 办公电脑上用 Workbench、Navicat 等可视化管理工具连接到 127.0.0.1:3344 就可以了,相当于连接了远程机器的 3306 端口。

无关链接

详解repo文件 http://blog.csdn.net/testcs_dn/article/details/41448447

查看MySQL连接数 http://blog.csdn.net/starnight_cbj/article/details/4492555

如何生成 rpm包

CentOS7 安装 Mysql 服务的更多相关文章

  1. [CentOs7]安装mysql(2)

    摘要 之前安装过一次mysql,最后配置,发现在本地无法连接,重启服务的时候一直卡在那里不动,感觉是安装的过程出问题,最后没办法还是卸载了,然后重新安装一下. [CentOs7]安装mysql Mys ...

  2. centos7安装mysql(yum)

    centos7安装mysql(yum) ----安装环境----依赖安装----检查mysql是否已安装----安装----验证是否添加成功----选择要启用的mysql版本----通过Yum安装my ...

  3. 阿里云 centos7 安装mysql数据库

    环境:阿里云ECS服务器,系统为centos7.2 删除原来的数据库: centos7中默认安装了数据库MariaDB,如果直接安装MySQL的话,会直接覆盖掉这个数据库,当然也可以手动删除一下: [ ...

  4. CentOS7-Minimal安装MySQL服务

    CentOS7默认安装的是Mariadb而不是mysql,而Mariadb是mysql的一个分支, 安装mysql会覆盖Mariadb 一.下载MySQL官方的 Yum Repository [roo ...

  5. Centos7 安装mysql服务器并开启远程访问功能

    大二的暑假,波波老师送了一个华为云的服务器给我作测试用,这是我程序员生涯里第一次以root身份拥有一台真实的云服务器 而之前学习的linux知识在这时也派上了用场,自己的物理机用的是ubuntu系统, ...

  6. CentOS7安装mysql提示“No package mysql-server available.”

    针对centos7安装mysql,提示"No package mysql-server available."错误,解决方法如下: Centos 7 comes with Mari ...

  7. 如何安装mysql服务

    我刚开始安装mysql的时候,在windows的服务里面可以看到,但是装了以后有一段时间没有用它了,我在准备从windows的服务里面启动mysql服务的时候,发现没有mysql的服务了,那我的解决办 ...

  8. 【转】如何安装mysql服务

    转载地址:http://www.2cto.com/database/201211/168081.html  我刚开始安装mysql的时候,在windows的服务里面可以看到,但是装了以后有一段时间没有 ...

  9. centos7安装mysql

    centos7安装mysql 1 查找系统是否安装了myql rpm -q mysql mysql-server1.1如果安装了.就删除 sudo yum -y remove mysql mysql- ...

随机推荐

  1. template template parameter

    #include <iostream> using namespace std; template<typename T> class A { }; template<t ...

  2. js Checkbox 传递多个值给后台

    ------前台JS "<input class=\'jTabCheck2\' type=\'checkbox\' partvguid=" + obj + " pr ...

  3. 遇到个奇怪的问题,同时开启本地和远程两个事务,远程事务是sql2000没问题,是sql2008的不报错,但是写不上数据

    遇到个奇怪的问题,同时开启本地和远程两个事务,远程事务是sql2000没问题,是sql2008的不报错,但是写不上数据. 倒腾了4.5天,找到最终的解决办法:直接调用AdoConnection.exe ...

  4. CHD 2014迎新杯比赛题解

    A. 草滩的魔法学校 分析: 高精度乘法 或 JAVA大数类 很明显 10000 的阶乘已经远远超过 64 位数能表示的范围了.所以我们要用一个比较大的数组来存放这个数.那数组要开多少位合适呢?我们不 ...

  5. 跨线程传递栈变量带来异常指针Crash

    在手Q动漫的一份古老的代码中,现网发现少数crash,错误代码示例: char str[100] = "hello"; dispatch_async(dispatch_get_ma ...

  6. TCP/IP协议中backlog参数

    TCP建立连接是要进行三次握手,但是否完成三次握手后,服务器就处理(accept)呢? backlog其实是一个连接队列,在Linux内核2.2之前,backlog大小包括半连接状态和全连接状态两种队 ...

  7. JavaScript简单的一些....

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  8. Facebook FB.init() status参数的作用

    意思是 status 设为 ture 之后调用 FB.getLoginStatus() 不再产生网络请求,数据已经在 FB.init() 调用的时候被请求回来,缓存住了.

  9. centos7安装mariadb后无法启动的问题

    MariaDB数据库管理系统是MySQL的一个分支,主要由开源社区在维护,采用GPL授权许可.开发这个分支的原因之一是:甲骨文公司收购了MySQL后,有将MySQL闭源的潜在风险,因此社区采用分支的方 ...

  10. 查看Oracle正在执行的任务

    select a.program, b.spid, c.sql_text,c.SQL_ID from v$session a, v$process b, v$sqlarea c where a.pad ...