1、查询linux版本:cat /etc/redhat-release
2、到官网去下载最新的rpm包:mysql-5.7.18-1.el7.x86_64.rpm-bundle.tar
3、检查是否已安装mysql : rpm -qa|grep mariadb
4、删除linux自带的mysql :
4.1:yum remove mysql-libs
4.2:yum remove mysql mysql-server mysql-libs compat-mysql51
4.3:查询出安装的mysql包 :rpm -qa | grep -i mysql
4.4:删除查询出来的MySQL包:rpm -e --nodeps mariadb-libs-5.5.44-2.el7.centos.x86_64
:4.5:删除MySQL数据库目录(关键) ,否则password不更新(默认安装,如果自定义安装路径和链接路径ln -s ……请删除。) rm -rf /var/lib/mysql
4.6: rm /etc/my.cnf
4.7:yum remove mysql mysql-devel mysql-server mysql-libs compat-mysql51
4.8:找到mysql路径删除掉:whereis mysql 然后用 rm -rf 命令删除
4.9: 找到mysql路径删除掉:find / -name mysql 然后用 rm -rf 命令删除
4.10:清空相关mysql的所有目录以及文件和其他配置和设置等。如果有,则删除。也必须考虑其他软件不去影响 rm -rf /usr/lib/mysql rm -rf /usr/share/mysql
4.11:rm –rf /usr/my.cnf rm -rf /root/.mysql_sercret
5、上传官网下载的包到 /opt/mysql下,
然后解压:tar -xvf mysql-5.7.19-1.el7.x86_64.rpm-bundle.tar
6、设置不校验签名: rpm --import /etc/pki/rpm-gpg/RPM*
7、使用rpm命令顺序安装:
[root@slave5 ~]# rpm -ivh mysql-community-common-5.7.16-1.el7.x86_64.rpm --nosignature
[root@slave5 ~]# rpm -ivh mysql-community-libs-5.7.16-1.el7.x86_64.rpm --nosignature
[root@slave5 ~]# rpm -ivh mysql-community-client-5.7.16-1.el7.x86_64.rpm --nosignature
[root@slave5 ~]# rpm -ivh mysql-community-server-5.7.16-1.el7.x86_64.rpm --nosignature
8、启动mysql数据库:systemctl start mysqld.service
停止mysql:systemctl stop mysqld.service
重启mysql:service mysqld restart
9、安装完之后修改root的mysql密码:
以下步骤需要root权限。
9.1:由于一开始并不知道密码,先修改配置文件/etc/my.cnf令MySQL跳过登录时的权限检验。加入一行:skip-grant-tables
9.2:重启MySQL:service mysqld restart
9.3:免密码登录MySQL:mysql
9.4:在mysql客户端执行如下命令,修改root密码:
use mysql;
UPDATE user SET authentication_string = password('your-password') WHERE host = 'localhost' AND user = 'root';
quit;
9.5:修改配置文件/etc/my.cnf删除此前新增那一行skip-grant-tables;
并重启MySQL:service mysqld restart 这一步非常重要,不执行可能导致严重的安全问题。
9.6:使用刚刚设置的密码登录。
mysql -u root -p
9.7:MySQL会强制要求重新修改密码,且不能为简单规则密码。
ALTER USER root@localhost IDENTIFIED BY 'your-new-password';
9.8:配置数据库可以让其他地址访问:
进入到数据库:mysql -u root -p
use mysql;
设置任何地址都能访问
update user set host = '%' where user = 'root';
查看修改情况:select host, user from user;
予任何主机访问数据的权限
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'Zhyt@2017' WITH GRANT OPTION ;
修改生效
FLUSH PRIVILEGES ;
EXIT
10、查看mysql是否在运行: ps -aux|grep mysql
11、mysql的安装目录
a 数据库目录
/var/lib/mysql/
b 配置文件
/usr/share/mysql(mysql.server命令及配置文件)
c 相关命令
/usr/bin(mysqladmin mysqldump等命令)
d 启动脚本
/etc/rc.d/init.d/(启动脚本文件mysql的目录)
e /etc/my.conf
12、linux下导入mysql数据库文件:
连接到数据库
mysql -u root -p
显示mysql中有几个数据库: SHOW DATABASES;
使用fsmap数据库:use fsmap;
设置数据库编码set names utf8
导入数据库(方法一)
source /opt/sqldatabase/fsmap.sql (速度快)
导入数据库(方法二)
cd /usr/bin
mysql -u root -p --default-character-set=utf8 fsmap< /opt/sqldatabase/fsmap.sql
导入完成进入到mysql,设置客户端查询的数据为中文,其他的编码不要设置
set character_set_results=gb2312;
查看数据库的字符集
show variables like '%char%';
创建数据库:
create database fsmap CHARACTER SET utf8 COLLATE utf8_general_ci;
删除数据库
DROP DATABASE fsmap;
13、windows导出数据库:
cd mysql的bin目录下
导出一:
mysqldump -u 用户名 -p fs-map>d:\fsmap.sql
导出二:
mysqldump -u 用户名 -p --default-character-set=utf8 fs-map>d:\fsmap.sql
导入操作
mysql -u 用户名 -p 密码 进入mysql命令控制台
show databases;
use fsmaptest;
set names utf8 设置数据库编码
导入数据库文件
source d:\fsmap.sql