mysql基础

http://www.runoob.com/mysql/mysql-install.html

windows下载地址 https://dev.mysql.com/downloads/file/?id=479669

1.解压zip包

2.在解压包mysql-8.0.12文件夹下创建 my.ini 配置文件,编辑 my.ini 配置以下基本信息:

[mysql]
# 设置mysql客户端默认字符集
default-character-set=utf8
 
[mysqld]
# 设置3306端口
port = 3306
# 设置mysql的安装目录
basedir=实际安装目录
# 设置mysql数据库的数据的存放目录
datadir= 实际数据目录
# 允许最大连接数
max_connections=20
# 服务端使用的字符集默认为8比特编码的latin1字符集
character-set-server=utf8
# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB
View Code

使用管理员身份打开cmd
初始化数据库:
mysqld --initialize --console

注:temporary password 临时密码 登录会使用

3.输入以下安装命令: mysqld --install

4.启动输入以下命令即可:net start mysql

 

注意: 在 5.7 需要初始化 data 目录:

cd C:\web\mysql-8.0.11\bin 
mysqld --initialize-insecure 

初始化后再运行 net start mysql 即可启动 mysql。

 

5.登录mysql

当 MySQL 服务已经运行时, 我们可以通过 MySQL 自带的客户端工具登录到 MySQL 数据库中, 首先打开命令提示符, 输入以下格式的命名:

mysql -h 主机名 -u 用户名 -p
  • -h : 指定客户端所要登录的 MySQL 主机名, 登录本机(localhost 或 127.0.0。1)该参数可以省略;
  • -u : 登录的用户名;
  • -p : 告诉服务器将会使用一个密码来登录, 如果所要登录的用户名密码为空, 可以忽略此选项。

若密码存在, 输入密码登录, 不存在则直接按回车登录。

使用临时密码登录后需要修改密码才能操作数据库

修改密码sql: alter user 'root'@'localhost' identified by '123';

Navicat连接MySQL Server8.0

出现Client does not support authentication protocol requested  by server;解决如下:

alter user 'root'@'localhost' identified with mysql_native_password by '********'; 

flush privileges ;  //将当前user和privilige表中的用户信息/权限设置从mysql库(MySQL数据库的内置库)中提取到内存里。MySQL用户数据和权限有修改后,希望在"不重启MySQL服务"的情况下直接生效,那么就需要执行这个命令。

 

---------------------------------分割线----------------------------------

 

创建用户

create user 'username'@'%' identified by 'password';

分配权限

GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,DROP ON [databasename].[tablename] TO 'zara'@'localhost'

查看权限

查看当前用户下所有的权限 show grants;

查看指定用户下的所有权限

需要执行flush privileges;

Create Table TableName(

Id Int  UNSIGNED NOT NULL AUTO_INCREAMENT ,// UNSIGNED 无符号 //AUTO_INCREAMENT  自增 //LAST_INSERT_ID( ) 函数来获取最后的插入表中的自增列的值

PRIMARY KEY(Id),

Name Varchar(20)

)

SELECT column_name,column_name
FROM table_name
[WHERE Clause]
[LIMIT N][ OFFSET M]

Where 条件默认不区分大小写,使用BINARY关键字设定区分大小写

正则表达式

查找name字段中以'st'为开头的所有数据:

mysql> SELECT name FROM person_tbl WHERE name REGEXP '^st';

查找name字段中以'ok'为结尾的所有数据:

mysql> SELECT name FROM person_tbl WHERE name REGEXP 'ok$';

查找name字段中包含'mar'字符串的所有数据:

mysql> SELECT name FROM person_tbl WHERE name REGEXP 'mar';

查找name字段中以元音字符开头或以'ok'字符串结尾的所有数据:

mysql> SELECT name FROM person_tbl WHERE name REGEXP '^[aeiou]|ok$';
posted @ 2018-10-18 13:32  vvf  阅读(156)  评论(0编辑  收藏  举报