本文以centos7为例
一.mysql安装
1.查询centos中是否已经安装mysql
rpm -qa | grep mysql
如果出现上述mysql的记录请用以下命令删除
yum remove mysql-community-server
再用rpm -qa | greq 查看如果未删除干净,用以下命令强制删除
rpm -e --nodeps mysql-libs-5.1.73-5.el6_6.i686
2.移除安装的配置:
使用如下命令查找配置:
find / -name mysql
可能显示的结果如下: 使用 rm -rf 删除 查找到的配置。
例如:rm -rf /usr/bin/mysql
3.查看是否安装了mariadb;
rpm -pa | grep mariadb
如果有安装的话使用如下命令移除:
rpm -e XXX
rpm -e --nodeps xxx //强制删除
2: 安装
用wget命令下载repo源
wget https://dev.mysql.com/get/mysql80-community-release-el7-3.noarch.rpm
注:也可到官网 查找最近的下载链接.
安装 mysql80-community-release-el7-3.noarch.rpm
rpm -ivh mysql80-community-release-el7-3.noarch.rpm;
更新 yum 命令
1: yum clean all
2: yum makecache
安装 mysql
命令:
yum -y install mysql-community-server
验证mysql是否安装成功:
mysqladmin --vesion
开机自动启动:
systemctl enable mysqld.service
停止服务:
systemctl stop mysqld.service
启动服务:
systemctl start mysqld.service
重启服务:
service mysqld restart
放开 3306端口:
firewall-cmd --zone=public --add-port=3306/tcp --permanent
firewall-cmd --reload; //重新加载配置
注:如果防火墙没开启,则不必设置
数据库开启之后,需要密码才能进入.
执行以下命令查看初始密码:
grep "password" /var/log/mysqld.log
执行以下命令登录:
mysql -u root -p
输入上述初始密码进行登录.
注意:此时需要修改初始密码,只有修改过密码之后才能继续操作.
修改mysql密码命令:
ALTER USER 'root'@'localhost' IDENTIFIED BY '密码';
这时就可以进修增删改查的操作.
二.修改远程权限
此时的数据库虽然可以在服务器上操作,但是在本地用navicat 还是连接不上的,原因是服务器的数据库有没开启远程访问权限.
切换到 mysql;
命令: use mysql;
查看user表:
Select host, user, authentication_string from user;
此时 root 的 host 是 localhost 需要修改
修改成任何IP可连接,%代表任何ip
update user set host='%' where user = 'root';
修改用户的认证规则:
alter user '用户名'@'%' identified with mysql_native_password by '密码';
例如
alter user 'root'@'%' identified with mysql_native_password by 'zZ123.';
刷新权限:
flush privileges;
重启服务
mysql> net stop mysql;
mysql> net start mysql;
这是远程的navicat就可访问;
三.密码忘记不能登录
vi /etc/my.cnf
在my.cnf加入skip-grant-tables ,然后 flush privileges 刷新配置,就可以免密登录。 修改密码之后,删除my.cnf中skip-grant-tables