小台的IT备忘录  
脑子越来越不好用,只能依靠烂笔头了~

一、下载MySQL

MySQL官网https://dev.mysql.com提供了Windows下的安装版msi和解压版zip,其中均包含32和64位版本,mis版本与SqlServer安装基本一致Next即可,在此讲解一下zip版的安装方式

目前最新的MySQL是5.7版,如果我想下载5.6版需要点击旁边的“Looking for previous GA Versions?”来查看旧版本的MySQL

询问登录时,直接点击“No thanks, just start my download.”下载即可

 

 

二、安装MySQL

1、解压到磁盘目录

2、配置环境变量

新建系统变量

变量名:MYSQL_HOME

变量值:C:\mysql-5.6.37-winx64(mysql解压目录)

C

普遍含有Path这个系统变量,对这个变量点击编辑,每一个值之间用;分号分隔

变量值:%MYSQL_HOME%\bin

 3、注册Windows系统服务

进入mysql的bin目录:cd c:\mysql-5.6.37-winx64\bin

在bin目录下安装mysql服务:mysqld install MySQL --defaults-file="C:\mysql-5.6.37-winx64\my-default.ini"

移除服务命令:mysqld remove

4、启动MySQL服务

在cmd中就是命令行中敲:net start mysql

 

三、配置MySQL

1、登录MySQL

刚刚安装完root帐号没有密码,所以可以直接登录:mysql -u root

2、设置root帐号密码

每条sql必须在结尾打;分号

显示现有数据库:show databases;

帐号密码在mysql库中,使用mysql库:use mysql;

修改帐号密码:update user set password=PASSWORD("root") where user='root';

刷新权限:flush privileges;

退出:quit;

再次登陆就要输入密码:mysql -u root -p

根据提示输入密码后登录

也可以直接输入帐号密码登录(-u直接输用户名,-p直接输密码):mysql -uroot -proot

 

四、MySQL配置远程连接

使用mysql库:use mysql;

查看权限:select host,user from user;

发现root只有本地访问权限,mysql采用白名单登录方式,所以无法远程访问

授权格式:grant 权限 on 数据库.表 to '用户名'@'登录主机' identified by '密码';

设置用户单一IP远程访问权限:grant all privileges on *.* to 'root'@'xxx.xxx.xxx.xxx' identified by 'root';

上面这句意思就是“某库的某表的权限赋予,某用户的某IP进行访问,访问密码为XXX”

all privileges代表全部权限,也可以只给select,update,insert权限

*.*代表某库.某表

'root'@'192.168.1.100'代表root用户用192.168.1.100的IP访问

identified by 'root'中的'root'代表访问的密码,与本机访问的密码不同,可以独立设置,比如本地localhost访问密码为123456,该用户远程访问密码为root

刷新权限:flush privileges;

查看授权:select user,host from user;

这样此IP就被允许访问这个MySQL了

设置某用户任意IP远程访问权限:grant all privileges on *.* to 'root'@'%' identified by 'root' with grant option;

'root'@'%'代表root用户任意访问IP

identified by '111111'此密码仅代表该远程访问的密码,与localhost方式登录的密码相互独立,比如本地localhost设置登录密码为123456,该用户远程访问密码为111111

with grant option代表将权限也赋予其他用户

这样任意IP只要用此用户访问MySQL都可以

命令行方式访问远程MySQL:mysql -h 10.11.12.237 -u root -p

-h 主机IP -u 用户 -p 回车输入密码

用Navicat工具登录

 

五、其他用户操作及基本操作

1、撤销权限格式:revoke 权限 on 库.表 from '用户'@‘登录主机’;

撤销用户授权:revoke all on *.* from 'root'@'10.11.12.89';

撤销权限以后权限表的数据不会删除,只是将权限为N

删除用户和登录主机:drop user 'root'@'10.11.12.89';

2、创建用户格式:create user '用户'@‘登录主机’ identified by '密码';

简单来说只要把用户的登录主机设置为%就可以用此用户远程访问,但没有授权所有无法做任何操作比如:select、insert、update、delete等

3、修改密码:update user set password=PASSWORD('密码') where user='用户' and host='登录主机';

4、显示数据库:show databases;

5、显示表:show tables;

6、查看表结构:describe 表名;

7、删除数据库:drop database 数据库名;

8、删除表:drop table 表名;

9、创建数据库:create database 数据库名;

也可以指定数据库编码格式:create database 数据库名 default character set utf8 collate utf8_general_ci;

10、创建表:create table 表名(字段名 字段类型);

自增列关键字:id int unsigned not null auto_increment

日期默认值关键字:create_time datetime not null default CURRENT_TIMESTAMP

无符号值关键字:id int unsigned not null auto_increment

主键关键字(独立一行,不在字段尾部设置):primary key (id)

posted on 2017-08-21 17:35  taiyonghai  阅读(5280)  评论(0编辑  收藏  举报