MySQL

初始化

1.mysqld --initialize --console这时会在控制台输出一个临时密码,把它存储起来2.mysqld install 安装mysql
3.net start mysql 启动mysql服务
4.mysql -uroot -p 登陆
5.password 密码(在data的err文件)
6.alter user 'root'@'localhost' identified by 'root';改密码


alter user 'root'@'localhost' identified by "password";
alter user 'root'@'localhost' identified with mysql_native_password by "root";
alter user 'root'@'localhost' identified with caching_sha2_password by "root";
————————————————
————————————————

————————————————

 

-- SqlServer(收费),Oracle,sqlite,access...,,,, MySQL

MySQL,SqlServer(收费),Oracle,sqlite,access..
服务端和客户端
mysql:

add|asdfasd
SqlServer:
a|asdfasdf

二、下载安装

1、下载
2、解压到任意目录
3、服务器端运行起来
mysqld

4、客户端连接

省事:
将mysql服务端制作成一个Windows服务
net start mysql
net stop mysql
===,打开服务管理,直接...

三、MySQL数据库

1、概念

    • 数据库, 文件夹
    • 数据库表, 文件
    • 数据行, 文件中的一行数据


2、启动服务器:

    • net start mysql
    • C:mysql-5.7.16-winx64mysql-5.7.16-winx64mysql 
    • 客户端连接:
    • C:mysql-5.7.16-winx64mysql-5.7.16-winx64mysql -u root -p

初试:

    • show databases; # 查看当前Mysql都有那些数据,根目录都有那些文件夹
    • create database 数据库名; # 创建文件夹
    • use 数据库名; # 使用选中数据库,进入目录
    • show tables; # 查看当前数据库下都有那些表,
    • create table 表名(nid int,name varchar(20), pwd varchar(64)); # 创建数据库表
    • select * from 表名; # 查看表中的所有数据
    • insert into 表名(nid,name,pwd) values(1,'alex','123'); # 插入数据
    • -- select * from 表名;


3、用户授权

    • 用户管理特殊命令:
    • 创建用户
    • create user '用户名'@'IP地址' identified by '密码';
    • 删除用户
    • drop user '用户名'@'IP地址';
    • 修改用户
    • rename user '用户名'@'IP地址'; to '新用户名'@'IP地址';;
    • 修改密码
    • set password for '用户名'@'IP地址' = Password('新密码')
    • c:mysql-5.7.16-winx64mysql-5.7.16-winx64inmysql -u


权限:
默认,什么都没有grant 权限 on 数据库.表 to '用户'@'IP地址' -- 授权select,查数据库.表test.tb1/test.*/*.*
'用户'@'IP地址'xiaohu@localhost

    • #创建账号、分配权限
    • CREATE USER 'sky'@'localhost' IDENTIFIED BY 'password';
    • GRANT ALL PRIVILEGES ON *.* TO 'sky'@'localhost' WITH GRANT OPTION;
    • CREATE USER 'sky'@'%' IDENTIFIED BY 'password';
    • GRANT ALL PRIVILEGES ON *.* TO 'sky'@'%' WITH GRANT OPTION;
    • CREATE USER 'sky'@'localhost' IDENTIFIED BY 'password';
    • GRANT RELOAD,PROCESS ON *.* TO 'sky'@'localhost';
    • #显示账号及权限相关信息
    • SHOW GRANTS FOR 'sky'@'localhost';
    • SHOW CREATE USER 'sky'@'localhost'
    • ————————————————
    • grant all privileges on *.* to 'test1'@'localhost' with grant option;

       with gran option表示该用户可给其它用户赋予权限,但不可能超过该用户已有的权限比如a用户有select,insert权限,也可给其它用户赋权,但它不可能给其它用户赋delete权限,除了select,insert以外的都不能这句话可加可不加,视情况而定。

       all privileges 可换成select,update,insert,delete,drop,create等操作如:grant select,insert,update,delete on *.* to 'test1'@'localhost';

       第一个*表示通配数据库,可指定新建用户只可操作的数据库如:grant all privileges on 数据库.* to 'test1'@'localhost';

       第二个*表示通配表,可指定新建用户只可操作的数据库下的某个表如:grant all privileges on 数据库.指定表名 to 'test1'@'localhost';

    • 查看用户授权信息show grants for 'test1'@'localhost';

    •  撤销权限revoke all privileges on *.* from 'test1'@'localhost';

    • 用户有什么权限就撤什么权限

    •  删除用户drop user 'test1'@'localhost';

===========重要,远程连接=================================

    • a. 解放双手,在重复操作文件,直接将命令发送给mysql服务端,自动操作
    • b. 数据库,表,行
    • c. 开户和授权
    • 密码,必须用
    • 其他,推荐用
    • d. 客户端连接(MySQL提供的客户端)

1、 mysql -u root -h 192.168.1.1 -p# 输入密码

2、 初试:

  • show databases; # 查看当前Mysql都有那些数据,根目录都有那些文件夹
  • create database 数据库名; # 创建文件夹
  • use 数据库名; # 使用选中数据库,进入目录
  • show tables; # 查看当前数据库下都有那些表,
  • create table 表名(nid int,name varchar(20), pwd varchar(64)); # 创建数据库表
  • select * from 表名; # 查看表中的所有数据
  • insert into 表名(nid,name,pwd) values(1,'alex','123'); # 插入数据
  • -- select * from 表名;

4、 SQL语句

    • 数据库级别
    • SHOW DATABASES;
    • CREATE DATABASE 数据库名称;
    • CREATE DATABASE 数据库名称 DEFAULT CHARSET utf8 COLLATE utf8_general_ci;
    • USE 数据库名称;
    • drop database 数据库名称;
    • 表级表
    • show tables;desc tb1;

 

原文地址:https://www.cnblogs.com/xied/p/12496813.html