Mysql安装
1.检查系统自带的Mysql,输入yum list installed |grep mysql。如检查无可进入下一步,有的话需卸载自带的Mysql
关于卸载尝试过网上的教程,亲测有效,记录下来以防后续忘记:
1)查看已安装的mysql:rpm -qa | grep -i mysql
2)yum卸载: yum remove XX【所有的软件包】
#for循环删除
for line in `rpm -qa|grep-i mysql`;do yum remove $line; done 【未使用过,后面需要大量删除的时候可尝试使用】
3)查找和mysql相关的目录:find / -name mysql
4)删除mysql目录:rm -rf XX【所有的目录】
2.下载匹配centos7的mysql5.7的资源wget -p /etc/software https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.22-1.el7.x86_64.rpm-bundle.tar
3.解压压缩包tar xvf mysql-5.7.22-1.el7.x86_64.rpm-bundle.tar
6.使用rpm安装数据源
rpm -ivh mysql-community-common-5.7.22-1.el7.x86_64.rpm
rpm -ivh mysql-community-libs-5.7.22-1.el7.x86_64.rpm
rpm -ivh mysql-community-client-5.7.22-1.el7.x86_64.rpm
rpm -ivh mysql-community-server-5.7.22-1.el7.x86_64.rpm
注:此处rpm包有依赖关系,所有一定要按顺序依次安装
7.检查是否安装成功rpm-qa|grep mysql,返回mysql-community-XX则代表mysql安装完成
Mysql的使用
1.启动mysql服务:service mysqld start
2.启动mysql数据库,使用命令mysql -uroot -p,此时需要输入密码,初始密码可以在mysql日志里面查看grep 'temporary password' /var/log/mysqld.log,根据返回的结果可以查看初始密码。再次输入mysql -uroot -p,密码输入初始密码后,完成mysql数据库的启动。
3.完成登录后,第一步必须先修改密码,否则其他操作都执行不了。
参考链接https://www.cnblogs.com/liuhaidon/archive/2019/09/12/11511129.html
用户信息/修改用户的密码/删除用户/分配权限等都是在mysql数据库的user表中
可以使用sql语句:alter user root@localhost identified by 'passwd';来修改root的登录密码。注:passwd为新密码,必须包含大小写数字特殊符号
4.考虑到root用户权限比较多,可以分配一些普通用户,此处我设置了username这个普通用户,sql语句:CREATE USER 'username'@'host' IDENTIFIED BY 'password';注:passwd代表密码,必须包含大小写数字特殊符号
5.为了navicat软件可以远程连接阿里云服务器上安装的数据库,此时需要给前面设置的username用户做一些修改:
1)修改uesrname的host列的值,变更为“%”【表示可以远程登录,并且是除服务器外的其他任何终端,%表示任意IP都可登录】
update user set host='%' where user='username' and host='localhost';
2)修改uesrname的权限,允许对数据库和数据库表进行操作
grant all privileges on *.* to 'username'@'%' identified by 'passwd';##赋予所有权限给用户
flush privileges;【注:修改权限完成后需要执行这一步,让修改生效】
补充一些命令:
使用哪张表,执行use User;//使用user表,其余表操作同理
退出数据库,执行exit,则退出mysql
Mysql远程连接
1.云服务器上增加3306端口
参考链接:https://www.cnblogs.com/heqiuyong/p/10460150.html
firewall-cmd --zone=public --add-port=3306/tcp --permanent # 开放3306端口
firewall-cmd --reload # 配置立即生效
查看监听的端口:netstat -lnpt,查看结果中有无3306被占用,有的话,则说明3306端口已生效
进一步确认3306接口是不是mysql业务,可以ps XX[进程值],返回是mysql则代表设置成功
2.阿里云端口规则上增加3306端口【一个大坑】
阿里云ECS处于安全考虑,默认的安全组规则只开通了22和3389号端口,根据需要需自己增加端口,不然远程连接一直报错,参考链接https://jingyan.baidu.com/article/92255446fe79bac51648f497.html
3.打开navicat工具,点击连接选项,主机名输入云服务器的IP,端口写3306,用户名和密码填写前面设置的username和密码,点击连接,则连接成功。