零,mysql的安装

http://blog.csdn.net/mhmyqn/article/details/17043921

https://www.cnblogs.com/wangjunyan/p/5183366.html

MySQL官网的Zip安装包安装方法:

1,将Zip包解压到 D:\workware\mysql-8.0.13-winx64

2,【注:貌似8.0.13不再需要my.ini配置文件了,有机会可以验证一下】在此文件夹下新建data文件夹用于存放数据库数据(库,表等信息),新建my.ini配置文件,写入如下信息

[mysql]
# 设置mysql客户端默认字符集
default-character-set=utf8
[mysqld]
#设置3306端口
port =
# 设置mysql的安装目录 basedir=D:\workware\mysql-8.0.-winx64
# 设置mysql数据库的数据的存放目录
datadir=D:\workware\mysql-8.0.-winx64\data # 允许最大连接数
max_connections=
# 服务端使用的字符集默认为UTF8
character-set-server=utf8
# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB

3,以管理员身份运行cmd,进入D:\workware\mysql-8.0.13-winx64\bin目录,执行 mysqld --initialize,执行完这一步之后,在D:\workware\mysql-8.0.13-winx64\data目录下有一个以计算机名称命名的.err后缀的文件。在里面有MySQL初始化的密码(如果运行mysqld --initialize-insecure 命令则不会设置root密码,如果使用mysqld --initialize --console,则会将文件里的内容打印到控制台,方便查询), 如下:

--10T14::.568243Z  [Note] [MY-] [Server] A temporary password is generated for root@localhost: ld%T8oMob-S3

4, 然后执行mysqld install命令安装mysql服务

5, 成功之后再启动MySQL服务:net start mysql

6,登录MySQL, mysql -uroot -p, 然后输入.err文件里的密码,就可以进入MySQL内部了。当首次进入MySQL执行SQL语句时,MySQL会提醒你使用ALTER USER命令重置密码You must reset your password using ALTER USER statement before executing this statement.。运行以下命令即可。

ALTER USER 'root'@'localhost' IDENTIFIED BY '新密码';

7※,以上就把zip包的MySQL安装好了。其他一些可能用到到命令:

7.1, 执行mysqld --remove(mysqld -remove也一样)命令可以将以前的错误安装删除 。注意直接卸载会报错服务在运行,需要先停止服务 net stop mysql ,然后卸载。

1,windows下,mysql密码忘记了解决方法 以及启动MySQL遇到1067系统错误的解决方法

1,首先,需要关闭MySQL Server服务。在“运行”窗口,输入“services.msc”,进入“服务”窗口。在服务窗口,可以找到“MySQL56”,选定,将其“停止”即可。
这样,MySQL Server服务就停止了。需要说明的是,这里的“MySQL56”受版本限制。举例来说,如果你的MySQL的版本是5.1,那么此时就是就是“MySQL51”。当然,也可以在命令行窗口使用“net stop MySQL56”来停止服务。

2,接着,需要使用到MySQL的安装位置。其实,我们之所以想知道MySQL的安装位置,是为了获取其下的.ini文件的位置。该文件记录了MySQL的配置信息。如果我们想跳过登录权限,就必须获取该文件的位置。需要注意的是,不同版本的.ini文件的名称不同,在MySQL 5.1时,它是my.ini,而在MySQL 5.6则是my-default.ini。

3,接着,打开命令行窗口,输入如下的命令:
C:\Users\wang>mysqld --defaults-file="D:\Program Files\MySQL\MySQL Server 5.6\my-default.ini" --console --skip-grant-tables

需要说明的是,此时该窗口不可再写入。这也是检验命令是否正确执行的一个标准。

4, 另外打开一个命令行窗口,输入命令:mysql -u root -p,回车即可进入mysql命令行界面。
接下来,只需要修改系统数据库,将密码进行更新即可。

需要使用到的命令是:

mysql->show database;

mysql->use mysql

mysql->update user set password=PASSWORD('12345') where USER='root';

这样,就将新密码设为了12345。

5,重新启动mysqld: net start mysqld(wampmysqld),如果遇到1067的错误(注:后来某天又遇到了这个错误,发现是my.ini配置文件里格式错误!),输入以下命令:

c:\mysql\bin\  mysqladmin-u root -p shutdown  然后再次net start mysqld即可

2,MySQL中没有boolean类型,而是用tinyint(1)来表示布尔类型。所以一些字段如果设置成tinyint(1),配合一些java框架,就会出现一些莫名其妙的问题,字段里存的是0,1,2,3,结果用框架查出来的值为 true,false(还有可能为null)。

3, 复合索引顺序,explain

4,关于MySQL中的 count(1), count(*), count(column)的说明:https://blog.csdn.net/quiet_girl/article/details/88641787

1,count(1) 和 count(*) 没有任何区别,性能也没有区别。结果为null的count(1)和count(*)也会统计在内。聚合函数只有这两个会统计null结果,其他的都不会。

2,count(column) 不会统计结果为null的行。

3,其他聚合函数(如,sum,avg,max,min等)也不会统计结果为null的行。

4,

5,MySQL中update语句如果数据没有变化(即受影响的行为0时),update_time也是不会变的!还以为job没跑,原来是这个原因。

6, mysql 查看当前使用的配置文件my.cnf的方法

7,查询数据的序号

  SELECT @i:=@i+1, id from knowledges k, (select @i:=0) j order by k.id asc

8,

9,一台服务器上(linux)启动两个mysql实例

操作环境:centos6.8

有时由于服务器硬件资源紧张,而又需要新增mysql服务。这时我们可以采取在一台服务器上部署两个mysql实例,来解决。

1、创建新的mysql实例数据存储目录:

mkdir -p /mnt/data/mysql/data

将  /mnt/data/mysql 目录设置为mysql用户组

chown -R mysql:mysql /mnt/data/mysql

2、把my.cnf配置文件复制一份,开几个端口要复制几份。(whereis my.cnf查看原来的文件位置或者mysql --help | grep my.cnf)

cp /etc/my.cnf /mnt/data/mysql/my.cnf

3、修改/data/mysql_3307/my.cnf文件,把默认的3306端口改成 3307,根据实际情况修改socket,basedir,datadir 。

[client]
port = 3307
socket = /tmp/mysql_3307.sock
default-character-set = utf8

The MySQL server

[mysqld]
port = 3307
user = mysql
socket = /tmp/mysql_3307.sock
basedir = /usr
datadir = /data/mysql_3307
character-set-server = utf8

4、初始化数据库:  ( select @@basedir 查看MySQL安装路径, @@datadir数据存储路径)

mysqld --defaults-file=/mnt/data/mysql/my.cnf  --user=mysql --basedir=/usr/local/mysql --datadir=/mnt/data/mysql/data --initialize  (--user表示用操作系统的哪个用户执行mysqld进程)

这里会生成一个随机密码,记下来后面需要,注意有时候密码是类似这样的:root@localhost: //dwCy&uQ8BR 。 这里的两个斜杠也是密码的一部分!!!

【这一步折腾了好久, 报错unable to lock .....,解决方法是my.cnf中注释掉一些配置:1, 日志相关的配置;2,innodb_flush_method=0_DIRECT】

5、启动mysql,要指定.cnf文件启动

mysqld_safe --defaults-file=/mnt/data/mysql/my.cnf --user=mysql &

6、停止MYSQL,需要指定对应的sock文件。

mysqladmin -uroot -S /tmp/mysql_3307.sock shutdown

7、登陆3307端口的mysql

mysql -uroot -p'xxx'  -S /tmp/mysql_3307.sock -P 3307

8、登录后第一步需要修改密码

mysql> set password for root@localhost = password('123456')

9、修改mysql库中User表中的用户 root对应的Host 为 "%",这样用Navicat也可以连接了。

use mysql;

update user set Host="%" where User="root"

flush priviledges;// 将此修改立即生效而无需重启MySQL

10,

11,

12,

13,

14,

15,

16,

17,

18,

19,

20,

MySQL平时记录笔记的更多相关文章

  1. 《高性能MySQL》读书笔记--锁、事务、隔离级别 转

    1.锁 为什么需要锁?因为数据库要解决并发控制问题.在同一时刻,可能会有多个客户端对表中同一行记录进行操作,比如有的在读取该行数据,其他的尝试去删除它.为了保证数据的一致性,数据库就要对这种并发操作进 ...

  2. MySQL数据库学习笔记(十二)----开源工具DbUtils的使用(数据库的增删改查)

    [声明] 欢迎转载,但请保留文章原始出处→_→ 生命壹号:http://www.cnblogs.com/smyhvae/ 文章来源:http://www.cnblogs.com/smyhvae/p/4 ...

  3. MySQL数据库学习笔记(九)----JDBC的ResultSet接口(查询操作)、PreparedStatement接口重构增删改查(含SQL注入的解释)

    [声明] 欢迎转载,但请保留文章原始出处→_→ 生命壹号:http://www.cnblogs.com/smyhvae/ 文章来源:http://www.cnblogs.com/smyhvae/p/4 ...

  4. mysql颠覆实战笔记(四)--商品系统设计(一):商品主表设计

    版权声明:笔记整理者亡命小卒热爱自由,崇尚分享.但是本笔记源自www.jtthink.com(程序员在囧途)沈逸老师的<web级mysql颠覆实战课程 >.如需转载请尊重老师劳动,保留沈逸 ...

  5. mysql颠覆实战笔记(三)-- 用户登录(二):保存用户操作日志的方法

    版权声明:笔记整理者亡命小卒热爱自由,崇尚分享.但是本笔记源自www.jtthink.com(程序员在囧途)沈逸老师的<web级mysql颠覆实战课程 >.如需转载请尊重老师劳动,保留沈逸 ...

  6. mysql颠覆实战笔记(二)-- 用户登录(一):唯一索引的妙用

    版权声明:笔记整理者亡命小卒热爱自由,崇尚分享.但是本笔记源自www.jtthink.com(程序员在囧途)沈逸老师的<web级mysql颠覆实战课程 >.如需转载请尊重老师劳动,保留沈逸 ...

  7. Mysql DOC阅读笔记

    Mysql DOC阅读笔记 转自我的Github Speed of SELECT Statements 合理利用索引 隔离调试查询中花费高的部分,例如函数调用是在结果集中的行执行还是全表中的行执行 最 ...

  8. MYSQL数据库学习笔记1

      MYSQL数据库学习笔记1 数据库概念 关系数据库 常见数据库软件 SQL SQL的概念 SQL语言分类 数据库操作 创建数据库 查看数据库的定义 删除数据库 修改数据库 创建表 数据类型 约束 ...

  9. 基于【 MySql 】二 || mysql详细学习笔记

    mysql重点学习笔记 /* Windows服务 */ -- 启动MySQL net start mysql -- 创建Windows服务 sc create mysql binPath= mysql ...

随机推荐

  1. [Flutter] lib/main.dart:1: Warning: Interpreting this as package URI, 'package:flutter_app/main.dart'.

    lib/main.dart:1: Warning: Interpreting this as package URI, 'package:flutter_app/main.dart'. import ...

  2. 1506.01186-Cyclical Learning Rates for Training Neural Networks

    1506.01186-Cyclical Learning Rates for Training Neural Networks 论文中提出了一种循环调整学习率来训练模型的方式. 如下图: 通过循环的线 ...

  3. Centos7下杀毒软件clamav的安装和使用

    目录 一.yum安装 二.编译安装 2.1:下载软件包 2.2:创建clamav用户和存放病毒库目录 2.3:解压安装包 2.4:安装依赖 2.5:编译安装 2.6:配置clamav 2.7:启动cl ...

  4. Shiro 整合 SpringBoot

    https://blog.csdn.net/weixin_38132621/article/details/80216056

  5. Gulp教程之:Gulp能做什么,前端装逼为何要用它

    我们先说说 平时web开发遇到的一些场景 和 苦恼无奈的情况: JavaScript和CSS的版本问题 我们都知道 JavaScript和CSS属于静态文件,如果地址不变,浏览器会缓存这些文件,那就意 ...

  6. Makefile 命令解析

    1.$(patsubst %.c,%.o, a.c b.c) 把字串“a.c b.c”符合模式[%.c]的单词替换成[%.o],返回结果是“a.o b.o” 2.$(VAR:A=B) 对于一个已经定义 ...

  7. numpy总结

    介绍 numpy是一个功能强大的python库.机器学习中,需要对矩阵进行各种数值计算,numpy对其提供非常好的库,用于简单和快速计算. 常用函数库 数组属性 ndarray.ndim:秩,即轴的数 ...

  8. Educational Codeforces Round 43 (Rated for Div. 2)

    Educational Codeforces Round 43 (Rated for Div. 2) https://codeforces.com/contest/976 A #include< ...

  9. js及vue监听键盘回车事件

    js document.onkeydown = (event) => { var e = event || window.event; if(e && e.keyCode==13 ...

  10. 学习一下sticky-footer

    什么是sticky-footer? 当页面长度不够长的时候,页脚粘贴在视窗底部:如果页面足够长时页脚会被内容向下推送. 实现方式: 1.负margin布局方式 给内容div加一个父div,设置父div ...