零,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. (项目六)Mha-Atlas-MySQL高可用方案实践

    mha-mysql环境准备: 三台虚拟机,都安装了mysql,都关闭防火墙和selinux,同时在每台虚拟机上都做映射 软件包 1) mha管理节点安装包: mha4mysql-manager-0.5 ...

  2. java中判断是否是一个无用的类

    类需要同时满足以下三个条件才能算是无用的类: 1.该类所有的实例都已经被回收,也就是java堆中不存在类的任何实例 2.加载该类的ClassLoader已经被回收 3.该类对应的java.lang.C ...

  3. step_by_step_Angularjs-UI-Grid使用简介

    了解 Angularjs UI-Grid 起因:项目需要一个可以固定列和表头的表格,因为表格要显示很多列,当水平滚动条拉至后边时可能无法看到前边的某些信息. 以前在angularjs 1.x 中一直都 ...

  4. Trie树详解(转)

    特别声明 本文只是一篇笔记类的文章,所以不存在什么抄袭之类的. 以下为我研究时参考过的链接(有很多,这里我只列出我记得的): Trie(字典树)的应用——查找联系人 trie树 Trie树:应用于统计 ...

  5. Tcp协议细节(三次握手,四次握手)

    利用滑动窗口实现流量控制(让发送方的发送速率不要太快,让接收方来得及接收) (发送窗口的发送窗口不能超过接收方给出的接收窗口的数值) 拥塞控制 拥塞:在某段时间,对网络中某一资源的需求超过了该资源所能 ...

  6. CentOS 7 安装MongoDB

    一.安装 1.进入网址 https://docs.mongodb.com/manual/tutorial/install-mongodb-on-red-hat/ 按照官方指南进行安装 2.创建文件 / ...

  7. appium 测试过程中遇到的几个问题 ---持续更新!

    一. appium自带的Chromedriver版本和设备Android System Webview版本不一致的问题 报错信息: io.appium.java_client.NoSuchContex ...

  8. 跳转Activity时清除当前Activity

    void GotoMainActivity(){ Intent intent = new Intent(ProductionInformationActivity.this, MainActivity ...

  9. 记录一次程序输出和DB查询不匹配的问题

    今天发生一件很神奇的事情,我用TP读取DB数据,然后打印出来的数据,和直接通过sequal pro查询出来的数据(某一列),怎么对都对不起来,我尝试 清空TP缓存 MYSQL服务重启 mac重启 都无 ...

  10. 关于有时候JQuery使用.val()赋值失败问题

    jQuery中有3个获取元素value值的函数比较相似:attr(), prop(), val(): 具体作用网上比较多就不展示对比过程了,结果就是:prop()和val()都能获取到文本框的实际va ...