代码改变世界

MySQL基础

2019-06-21 20:53  风e逸  阅读(84)  评论(0)    收藏  举报

MySQL安装:

  初始化:

    MySQL解压后的 bin 目录下有一大堆的可执行文件,执行如下命令初始化数据:

 

cd c:\mysql-5.7.16-winx64\bin
 
mysqld --initialize-insecure

 

  启动MySQL服务

    执行命令从而启动MySQL服务

# 进入可执行文件目录
cd c:\mysql-5.7.16-winx64\bin
 
# 启动MySQL服务
mysqld

  启动MySQL客户端并连接MySQL服务

    由于初始化时使用的【mysqld --initialize-insecure】命令,其默认未给root账户设置密码

# 进入可执行文件目录
cd c:\mysql-5.7.16-winx64\bin
 
# 连接MySQL服务器
mysql -u root -p
 
# 提示请输入密码,直接回车

  为方便日后操作,可以添加环境变量

    a. 添加环境变量

    将MySQL可执行文件添加到环境变量中,从而执行执行命令即可

【右键计算机】--》【属性】--》【高级系统设置】--》【高级】--》【环境变量】--》【在第二个内容框中找到 变量名为Path 的一行,双击】 --> 【将MySQL的bin目录路径追加到变值值中,用 ; 分割】
 
如:
C:\Program Files (x86)\Parallels\Parallels Tools\Applications;%SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\Wbem;%SYSTEMROOT%\System32\WindowsPowerShell\v1.0\;C:\Python27;C:\Python35;C:\mysql-5.7.16-winx64\bin
View Code

  如此一来,以后再启动服务并连接时,仅需:

1 # 启动MySQL服务,在终端输入
2 mysqld
3  
4 # 连接MySQL服务,在终端输入:
5 mysql -u root -p
View Code

  将MySQL服务制作成windows服务

  上一步解决了一些问题,但不够彻底,因为在执行【mysqd】启动MySQL服务器时,当前终端会被hang住,那么做一下设置即可解决此问题:

1 # 制作MySQL的Windows服务,在终端执行此命令:
2 "c:\mysql-5.7.16-winx64\bin\mysqld" --install
3  
4 # 移除MySQL的Windows服务,在终端执行此命令:
5 "c:\mysql-5.7.16-winx64\bin\mysqld" --remove
View Code

  注册成服务之后,以后再启动和关闭MySQL服务时,仅需执行如下命令:

1 # 启动MySQL服务
2 net start mysql
3 
4 # 关闭MySQL服务
5 net stop mysql
View Code

 基本操作:

  创建数据库文件:create database db1;

  显示数据库文件:show databases;

  进入数据库:use db1;

  创建文件:create table t1 (id int auto_increment primary key,name char(10) )engine = innodb default charset = utf8;

  文件操作:

    增:insert into t1(name) values('alex');

    删:delete from t1 where id = 1;

    改:update t1 set name = 'ales' where id = 1;

    查:select * from t1;

 

  

 对于自增补充:
  desc t1;//显示表内数据的基本类型

  show create table t1;//显示创建方式

  show create table t1 \G;//以制表符显示创建方式

  alter table t1 AUTO_INCREMENT=20;//修改自增值

 自增步长

  MySQL是基于会话级别:(即每个开启的窗口)
  show session variables like 'auto_inc%'; 查看全局变量
  set session auto_increment_increment=2; 设置会话步长为2,即每次自增加 2
  # set session auto_increment_offset=10;设置起始值

  基于全局级别:(建议不要用,修改全局的,会将别人的也修改)

  show global variables like 'auto_inc%'; 查看全局变量
  set global auto_increment_increment=2; 设置会话步长
  # set global auto_increment_offset=10;