Centos7下安装Mysql(任意版本)--完整操作手册

1. 前期准备

  • 1.1. 拷贝mysql-server和mysql-client文件至root目录下

     		MySQL-server-5.6.26-1.el6.x86_64
     		MySQL-client-5.6.26-1.el6.x86_64
    

下载地址链接:https://pan.baidu.com/s/1vkswbpUjT535PkUJ8jXaLg
提取码:p6nv
复制这段内容后打开百度网盘,操作更方便哦

  • 1.2. 清理环境、centos7会自带一个mariadb

查看是否已安装
rpm -qa |grep -i mysql
rpm -qa |grep -i mariadb(centos7默认系统自带的)
在这里插入图片描述

  • 1.3. 卸载自带的mariadb
    yum remove mariadb-libs-5.5.60-1.el7_5.x86_64
    Centos7下安装Mysql(任意版本)--完整操作手册_第1张图片

2. 部署MySql

  • 2.1. 安装Mysql-server

使用命令rpm -ivh MySQL-server-5.6.26-1.el6.x86_64.rpm安装Mysql-server
出现下图提示,说明已经存在一个版本的Mysql-server了(Linux自带的)
请执行rpm –e Linux自带的Mysql-server --nodeps 进行卸载
Centos7下安装Mysql(任意版本)--完整操作手册_第2张图片
Centos7下安装Mysql(任意版本)--完整操作手册_第3张图片
卸载完成后继续执行命令rpm -ivh MySQL-server-5.6.26-1.el6.x86_64.rpm安装Mysql-server,成功提示如下图:
Centos7下安装Mysql(任意版本)--完整操作手册_第4张图片
安装过程中会有显示初始密码的文件路径,下面进行修改和查询用
Centos7下安装Mysql(任意版本)--完整操作手册_第5张图片

查询密码

cat /root/.mysql_secret

启动服务

service mysql start

在这里插入图片描述

  • 2.2. 安装Mysql-client

使用命令rpm -ivh MySQL-client-5.6.26-1.el6.x86_64.rpm安装客户端
安装mysql-client
3. 使用客户端进行数据库操作

  • 3.1. 进入数据库

命令

mysql --host=127.0.0.1 --port=3306 --user=root --password=部署Mysql时的默认密码 
  • 3.2. 首次登陆修改密码

命令

SET PASSWORD FOR 'root'@'localhost' = PASSWORD('新密码');

如下图所示
Centos7下安装Mysql(任意版本)--完整操作手册_第6张图片

  • 3.3. 创建自己需要的库,例如:我建立的库名叫mooc_cloud库

命令

create schema mooc_cloud default character set utf8 collate utf8_general_ci;
  • 3.4. 退出

命令 quit
Centos7下安装Mysql(任意版本)--完整操作手册_第7张图片

  • 3.5. 使用新密码登录mooc_cloud库

命令如下

mysql --host=127.0.0.1 --port=3306 --user=root --password=TrL6NfhLM4HzXNk --database mooc_cloud;

3.6. 如果有脚本执行脚本,如下图:
命令 mysql> \. /root/init_table.sql
命令 mysql> \. /root/initdata20150821.sql
Centos7下安装Mysql(任意版本)--完整操作手册_第8张图片

  • 3.7. 赋权等操作,依次执行下述命令(赋予权限后才能使用其他客户端连接

mysql>use mysql;
mysql>grant all on . to ‘root@%’ identified by’密码’;
mysql>update user set host = ‘%’ where user =‘root’ and host=‘localhost’;
mysql>flush privileges;
mysql>quit;

**

4.修改数据存储路径

**

  • 1.1 查看mysql存储目录

ps -ef|grep mysql
在这里插入图片描述
关闭mysql----------->kill -9 进程

  • 1.2 然后是转移数据,为了安全期间,我们采用复制命令cp,先找到mysql的原目录
#cd /var/lib
#ls

运行这个命令之后就会看到mysql的目录了,然后创建目录赋予权限再执行cp命令

mkdir /home/data
chown -R mysql:mysql /home/data
#cp -a mysql    /home/ data/    

这样就把数据库复制到/home/data下面去了

注意:(-a这个参数一定要带着,否则复制过去的权限就不对了。)

  • 1.3 然后我们修改配置文件,一共有两个文件,下面我一一说明:

修改第一个文件:修改之前先备份cp /usr/my.cnf /usr/my.cnfbak

 vi /usr/my.cnf
 打开之后修改datadir的目录为/home/data/mysql
 把socket改成/home/data/mysql/mysql.sock      

#为了安全起见,你可以把原来的注释掉,然后重新加入一行,改成现在的目录

修改第二个文件: 修改之前先备份 cp /etc/init.d/mysql /etc/init.d/mysqlbak

   vi /etc/init.d/mysql

注意:准确的位置是/etc/rc.d/init.d/mysql,由于这里这里有一个/etc/init.d到/etc/rc.d/init.d的映射,
所以用上面的命令即可,也简单。
把其中datadir=/var/lib/mysql一行中,等号右边的路径改成你现在的实际存放路径:/home/data/mysql

  • 1.4 如果在启动或登录不了数据库时候,下面需要建立一个mysql.sock的链接:
 ln -s /home/data/mysql/mysql.sock    /var/lib/mysql/mysql.sock

至此所有的修改都完成了,下面启动mysql

  service mysql start
  • 1.5 赋予权限后如果出现客户端工具navicat链接不上可以尝试如下两种方式

1、关闭防火墙
centos7关闭防火墙
systemctl stop firewalld 关闭防火墙服务
systemctl disable firewalld 开机关闭防火墙

2、在开启了防火墙时,做如下设置,开启相关端口,
修改/etc/sysconfig/iptables 文件,添加以下内容:
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 8081 -j ACCEPT
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT
或者使用命令
firewall-cmd --zone=public --add-port=8081/tcp --permanent
firewall-cmd --zone=public --add-port=3306/tcp --permanent
重启防火墙
service iptables restart 或者 firewall-cmd --reload

3、验证Mysql时候启动成功

netstat –nat
mysql默认端口号为3306,以上信息中出现3306端口号,则启动成功
Centos7下安装Mysql(任意版本)--完整操作手册_第9张图片
4、使用navicat工具连接mysql,下面提供的navicat版本可以连接各大数据库。
链接:https://pan.baidu.com/s/1aV-NjORSwPA78VRL1qXujQ
提取码:ct7w
复制这段内容后打开百度网盘手机,操作更方便哦
Centos7下安装Mysql(任意版本)--完整操作手册_第10张图片

肯定能用到技巧一

如果想单独给库建设用户及赋权

1、root用户登陆

mysql -u root -p

2、创建vc用户设置密码为jsyc@vc#!

CREATE USER 'vc'@'localhost' IDENTIFIED BY 'jsyc@vc#!';

3、赋予权限vc用户有jsyc_vc库的所有的表权限

解释:库    名.表名
      jsyc_vc.*
grant all on jsyc_vc.* to 'vc'@'%' identified by 'jsyc@vc#!';

grant all on jsyc_vc.* to 'vc'@'localhost' identified by 'jsyc@vc#!';

4、立即生效

flush privileges;

肯定能用到技巧二

如果过忘记数据库的root密码。

第一步:编辑配置文件/etc/my.cnf文件,在[mysqld]下面添加,保存退出。

vim /etc/my.cnf
skip-grant-tables

保存退出。

重启mysql服务:service mysqld restart。

第二步:进入MySQL数据库,更改root密码。

重启MySQL服务后,使用mysql命令进入MySQL命令行,更改root密码。
更改root密码:

旧版本数据库5.6

mysql>UPDATE mysql.user SET password=PASSWORD('你的密码') where USER='root';

新版本数据库5.7以上

mysql>update user set authentication_string=password('你的密码') where user='root';

注意:必须使用PASSWORD()函数加密密码,否则登录不了。

第三步:刷新权限表:

mysql>flush privileges;

第四步:退出数据库:

quit;

你可能感兴趣的:(mysql)