背景
- 需要给人开发一个项目,然后我让客户自己选购了阿里云的 centos7 系统(他才买了 350 元一年,我很好奇为什么这么便宜,我是 680…杀熟嘛)
- 然后让客户用 ssh 工具配置,这样我就可以通过 ssh 来连接他的服务器了
- 这个时候我就需要安装 mysql,并在外面来远程连接了
安装 mysql
安装依赖包
1 | yum -y install gcc gcc-c++ ncurses ncurses-devel cmake bison |
yum 和 rpm 是什么
- yum,是 Yellow dog Updater Modified 的简称,起初是由 yellow dog 这一发行版的开发者 Terra Soft 研发,用 python 写成,那时还叫做 yup(yellow dog updater),后经杜克大学的 Linux@Duke 开发团队进行改进,遂有此名。
- yum 的宗旨是自动化地升级,安装/移除 rpm 包,收集 rpm 包的相关信息,检查依赖性并自动提示用户解决。
- rpm(二进制包)是 linux 的可执行程序,类似 windows 的 exe 文件
先检测系统是否自带原有版本 mysql 安装包,如果有要先卸载删除,不然不能成功安装和启动
1 | rpm -qa | grep mysql 查看有哪些安装包 |
- 如果发现有安装包,可以用 rpm -e 命令删掉安装包
下载 Mysql 的 repo 源
1 | mkdi /usr/local/download |
安装 mysql-community-release-el7-5.noarch.rpm 包
1 | rpm -ivh mysql-community-release-el7-5.noarch.rpm //rpm -ivh是安装命令的意思 |
安装 mysql
- yum install -y mysql-community-server
安装成功后重启 MySQL 服务
- service mysqld restart
查看 MySQL 服务进程和端口
1 | ps -ef | grep mysql |
- ps 命令是 Process Status 的缩写
- ps 命令用来列出系统中当前运行的那些进程。ps 命令列出的是当前那些进程的快照,就是执行 ps 命令的那个时刻的那些进程,如果想要动态的显示进程信息,就可以使用 top 命令。ps 命令详情实例查看这里
- netstat 是显示各种网络信息的工具
获取 mysql 默认密码
- grep ‘temporary password’ /var/log/mysqld.log
- 如果没有反应,需要重置密码
1 | mysql -u root |
需要远程连接
- 开放 3306 端口
1 | systemctl start firewalld.service //启动防火墙 |
- 开启远程登录
1 | mysql -u root -p |
阿里云远程连接的坑
- 在外面怎么连接 mysql 各种超时,即使把防火墙关了也无济于事。是因为阿里云有个安全组策略
- 在安全组策略配置 3306 端口开放