潇洒郎: 在线/离线安装MySQL数据库与配置、常用命令数据库操作-解决更改character-set-server默认为latin1问题,修改mysql密码、创建新用户授予权限——安装服务

一、在线安装

 

 

官网: dev.mysql.com

选择版本,

下载好了之后点击安装:

我选择自定义安装

默认安装路径:C:\Program Files\MySQL\MySQL Server 5.6

文件目录介绍:

查看服务是否启动:

命令行:mysql -uroot -p

输入密码

如果服务没有启动

则数据库连接不成功

可以通过命令开启服务:

net start mysql56

退出

配置文件编码方式, 解决latin1编码方式: 保证客户端、数据库、服务器编码一致

配置文件位置:C:\ProgramData\MySQL\MySQL Server 5.6\my.ini

常用命令:

# 启动服务
net start mysql56
# 停止服务服务
net stop mysql56
# 连接数据库
mysql -uroot -p
# 退出数据库,ctrl+C 不适合5.6
exit、quit、\q
# 服务器IP地址-h,-P3306 默认端口号
mysql -h127.0.0.1 -uroot -p -P3306 --promote=xsx  # 制定命令行提示符

创建数据库db1

地址在:C:\ProgramData\MySQL\MySQL Server 5.6\data 

该文件夹是隐藏的,需要

显示数据库SHOW DATABASES

创建制定编码方式的数据库与查看

# 查看数据详细信息
SHOW CREATE DATABASE db1;
# 创建数据库并制定编码方式
CREATE DATABASE IF NOT EXISTS db3 DEFAULT CHARACTER SET='GBK';
# 修改已知数据库的编码方式
ALTER DATABASE db3 DEFAULT CHARACTER SET='utf8';

# 打开数据库
USE db3;
# 当前打开的数据库名称
SELECT DATABASE();

# 删除数据库
DROP DATABASE db3;


# 如果有警告信息,则可显示
SHOW WARNINGS


# 查看帮助手册

help或者\h int
\h create database

开启日志:记录所有操作
\T 文件路径
\T C:\Users\Administrator\Desktop\log.txt

存储引擎选择:

默认InnoDB: 支持事务完整性、崩溃修复、高并发,存储效率低、空间占用大

MyISAM: 3中存储方式,静态(默认)、动态、压缩(小),不支持事务,并发; 数据存储、插入、读取迅速。

MyMORY: 数据存储在内存中,安全性不高,表不能太大,hash索引,断电数据消失

# 有中文时 临时设置客户端编码: SET NAMES GBK;

# 注释内容
-- 注释内容
-- 创建st数据库
CREATE DATABASE IF NOT EXISTS st DEFAULT CHARACTER SET 'UTF8';

USE st;

# 学员表(user) 编号id 用户名username 年龄age 性别sex 邮箱email 地址addr 生日birth  薪水salary 电话tel 是否结婚 married
# 有中文时 临时设置客户端编码: SET NAMES GBK;
-- 字段注释 通过COMMENT + 内容
CREATE TABLE IF NOT EXISTS user(
id SMALLINT,
username VARCHAR(20),
age TINYINT,
sex ENUM('男','女','保密'),
email VARCHAR(50),
addr VARCHAR(200),
birth YEAR,
salary FLOAT(8,2),
tel INT,
married TINYINT(1)  COMMENT '0代表未结婚,非代表结婚'
) ENGINE=INNODB CHARSET=UTF8;

# 新闻分类表

CREATE TABLE IF NOT EXISTS news_cf(
id TINYINT,
newsname VARCHAR(50),
newsdesc VARCHAR(200)  # 后面不能加逗号,否则出错
)ENGINE=MyISAM CHARSET=UTF8;

和INNODB不同,frm文件存储表结构,MYD存储表数据,MYI存储表索引

查看表结构:

# 查看表结构
# DESC news_cf;
# DESCRIBE news;
# SHOW COLIMNS FROM news;

判断字符的长度

select length("啊"); # 3

select char_length("啊"); # 1

完整性约束

CREATE TABLE IF NOT EXISTS user2(
id INT,
username VARCHAR(20),
card CHAR(18),  # 身份证
PRIMARY KEY(id,card) # 复合主键
);

复合主键:

mysql -uroot -proot st --prompt=\d~\D~\u~\h 

st为打开的数据库名称  u为用户名 h为主机

st~Sun Jan 17 16:47:36 2021~root~localhost

二、离线安装 

下载zip包

配置mysql配置信息

my-default.ini

# For advice on how to change settings please see
# http://dev.mysql.com/doc/refman/5.6/en/server-configuration-defaults.html
# *** DO NOT EDIT THIS FILE. It's a template which will be copied to the
# *** default location during install, and will be replaced if you
# *** upgrade to a newer version of MySQL.

[mysqld]

# Remove leading # and set to the amount of RAM for the most important data
# cache in MySQL. Start at 70% of total RAM for dedicated server, else 10%.
# innodb_buffer_pool_size = 128M

# Remove leading # to turn on a very important data integrity option: logging
# changes to the binary log between backups.
# log_bin

# These are commonly set, remove the # and set as required.
# basedir = .....
# datadir = .....
# port = .....
# server_id = .....
basedir = D:\Develop\MySQL\mysql-5.6.39-winx64
datadir = D:\Develop\MySQL\mysql-5.6.39-winx64\data
port = 3306

# 设置mysql客户端默认字符集
default-character-set=utf8
# 允许最大连接数
max_connections=200
# 服务端使用的字符集默认为8比特编码的latin1字符集
character-set-server=utf8
# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB

# Remove leading # to set options mainly useful for reporting servers.
# The server defaults are faster for transactions and fast SELECTs.
# Adjust sizes as needed, experiment to find the optimal values.
# join_buffer_size = 128M
# sort_buffer_size = 2M
# read_rnd_buffer_size = 2M 

sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES 

 安装MySQL服务

命令行提示符-管理员身份运行-安装mysql服务

mysqld --install

 查看服务

 

卸载MySQL服务命令:

mysqld --remove

初始化MySQL:

mysqld --initialize-insecure --user=mysql

启动MySQL服务:

> net start mysql

关闭MySQL服务:

> net stop mysql

三、修改密码

删除MySQL Server 8.0/data下所有文件

初始化mysql

mysqld --initialize-insecure --user=mysql

启动mysql服务

net start mysql

命令行登录mysql

mysql -u root -p

输入密码时直接按回车进入

修改密码

use mysql;
select user, plugin from user where user=‘root;
alter user "root"@"localhost" identified with mysql_native_password by "123456";


第一次登陆是不需要密码的,直接输入命令后,回车即可:

mysql -u root -p 


为 root 用户设置密码为 123456 :

set password for 'root'@'localhost' = '123456';

四、创建新用户并授予权限

创建用户并授予权限

create user 'test'@'%' identified with mysql_native_password by '密码';

‘%’ - 所有情况都能访问
‘localhost’ - 本机才能访问
’111.222.33.44‘ - 指定 ip 才能访问

//指定数据库
grant all privileges on 想授权的数据库.* to '用户名'@'%';
//全部数据库

grant all privileges on *.* to 'test'@'%';

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

潇洒郎

您打赏我发自肺腑努力创作的心灵

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值