Mysql工作記錄之修改默認存儲引擎及重設root用戶密碼
1》修改默認存儲引擎方法
修改配置文件,然後重啟mysql服務;
[root@CHW mysql]# cat /etc/my.cnf
[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
user=root
skip-grant-tables
default-storage-engine=INNODB
# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0
[mysqld_safe]
log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid
2》字段類型char, varchar,text的區別
text、char、varchar是數據在數據庫中的存放策略問題,為了合理應用存儲空間,是數據庫服務器對數據類型劃分的方式,對於應用
程序,把它們和string對應就可以了;
char:是固定長度的,但是長度範圍是0~255,当我們想要存儲一個長度不足255的字符時,Mysql會用空格來填充剩下的字符,因此
在讀取數據時,char類型的數據要進行處理,把後面的空格去除;
varchar:關於varchar,有的說最大長度是255,也有的說是65535,查閱很多資料后發現是這樣的:varchar類型在5.0.3以下的版本中
的最大 長度限制為255,而在5.0.3及以上的版本中,varchar數據類型的長度支持到了65535,也就是說可以存放65532個字
節(注意是字節而不是字符)的數據(起始位和結束位占去了3個字節),也就是說在5.0.3以下版本中需要使用固定的TEX
T或BLOB格式存放的數據,可以在高版本中使用可變長的varchar來存放,這樣就能有效的減少數據庫文件的大小;
text:與char和varchar不同的是,text不可以有默認值,其最大長度是2的16次方-1;
總結如下:
經常變化的字段用varchar;
知道固定長度的用char;
儘量用varchar;
超過255字符的只能用varchar或者text;
能用varchar的地方不用text;
char是一種固定長度的類型,varchar則是一種可變長度的類型,在char(M)類型的數據列里,每個值都佔用M個字節,如果某個
長度小於M,Mysql就會在它的右邊用空格字符補足(在檢索操作中那些填補出來的空格字符將被去掉);在varchar(M)類
型的數據列中,每個值只佔用剛好夠用的字節再加上一個用來記錄其長度的字節(即總長度為L+1字節);比如char(255)
和varchar(255),在存儲字符串“hello world”的時候,char會用一塊255的空間放那11個字符,而varchar就不會用255個,
他先計算長度后只用11個再加上計算得到字符串長度信息,一般1-2個byte來,這樣varchar在存儲不確定長度的時候會大
大減少存儲空間;
某種原因char固定長度,所以在處理速度上要比varchar快速很多,但是相對浪費存儲空間,所以對存儲要求不高,但在速度
上有要求 的可以使用char類型,反之可以用varchar類型來實例;一個關於varchar的問題是varchar他既然可以自動適應存儲空間,那我
們varchar(8)和varchar(255)存儲應該都是一樣的,那每次表設計的時候往大的方向去好了,免得以後不夠用麻煩,這個思路是不對的
,mysql會把表信息放到內存中(查詢第一次后,就緩存住了,linux下很明顯,但windows下似乎沒有,不知道為啥),這時內存的申請是
按照固定長度來的,如果varchar很大就會有問題,所以還是應該按需索取;
3》root用戶密碼忘記以後重新設置
1)修改配置文件,添加如下語句
[root@CHW scripts]# cat /etc/my.cnf
[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
user=root
skip-grant-tables
default-storage-engine=INNODB
# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0
2)重新啟動mysql服務,用mysql直接進入;
3)使用如下命令重新設置root用戶的密碼;
mysql> update mysql.user set password=PASSWORD("aixocm") where user="root";
Query OK, 3 rows affected (0.00 sec)
Rows matched: 3 Changed: 3 Warnings: 0
4)刷新權限
mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)
Mysql工作記錄之修改默認存儲引擎及重設root用戶密碼的更多相关文章
- 數據庫ORACLE轉MYSQL存儲過程遇到的坑~(總結)
ORACLE數據庫轉MySQL數據庫遇到的坑 總結 最近在做Oracle轉mysql的工程,遇到的坑是真的多,尤其是存儲過程,以前都沒接觸過類似的知識,最近也差不多轉完了就總結一下.希望能幫到一些人( ...
- MySQL初次安装配置及修改密码
安装前的准备工作: 下载完后,我们将 zip 包解压到相应的目录,这里我将解压后的文件夹放在 C:\mysql-8.0.11 下. 接下来我们需要配置下 MySQL 的配置文件 打开刚刚解压的文件夹 ...
- 默認打開pr_debug和dev_dbg
作者:彭東林 郵箱:pengdonglin137@163.com 日期:2016-08-26 18:04:14 在進行Linux驅動開發時經常見到使用pr_debug和dev_dbg打印驅動的log, ...
- 開啟apache的日誌功能,但是不記錄.js;.css;.jpg;.ico;.png等訪問記錄
維護web伺服器最重要的就是要每天都關注網站的訪問日誌,但是每天面對幾百兆的日誌文件實在是非常頭大,所以可以從根源上給日誌減肥一下,讓日誌只記錄對自己有用的內容就變得非常重了. Nginx伺服器要修改 ...
- 02.C#可空類型、默認參數、LINQ(一章1.3-1.4)
利用上班時間發個隨筆,不知領導會不會看到,可能會有同事看到也說不定啊:) 關于可空類型,在C#1中沒有這個概念,在C#3中引入的.那比如我們要實現一個表示人的類,人有名字和年齡兩個屬性,如何表示一個沒 ...
- MYSQL 查看最大连接数和修改最大连接数
MySQL查看最大连接数和修改最大连接数 1.查看最大连接数show variables like '%max_connections%';2.修改最大连接数set GLOBAL max_connec ...
- Mysql工作流程分析
Mysql工作流程图 工作流程分析 1. 所有的用户连接请求都先发往连接管理器 2. 连接管理器 (1)一直处于侦听状态 (2)用于侦听用户请求 3. 线程管理器 (1)因为每个用户 ...
- mysql 同时支持多少连接MYSQL 查看最大连接数和修改最大连接数
MySQL查看最大连接数和修改最大连接数 1.查看最大连接数 show variables like '%max_connections%'; 2.修改最大连接数 set GLOBAL max_con ...
- MySQL数据库数据存放位置修改
MySQL数据库数据存放位置修改 MySQL是一个关系型数据库管理系统,由瑞典MySQL AB 公司开发,目前属于 Oracle 旗下产品.MySQL 最流行的关系型数据库管理系统,在 WEB 应用方 ...
随机推荐
- destoon 分页
php: global $pagesize,$page; $pagesize = 10;//分页改为10条一页 $offset or $offset = ($page-1)*$pagesize; $t ...
- Linux查看内存使用情况
输入:top PID:进程的ID USER:进程所有 PR:进程的优先级别,越小越优先被执 NInice: VIRT:进程占用的虚拟内 RES:进程占用的物理内 SHR:进程使用的共享内 S:进程的状 ...
- Android使用HTTPS进行IP直连握手失败问题(okHttp)
为什么要使用ip直连这种方式去请求我们的服务器呢?这其实和国内运营伤有关,运营商有时为了利益会将你的域名劫持换成他人的域名,为了防止这种情况的发生通用的解决办法要么联系运营商要么就只能使用ip直连了. ...
- for循环语句个人小结
重新看了一下光盘上的用for循环写一个菱形的答案,发现了其实有几点是可以灵活运用的: 1,当定义行数的时候,也可以用相等的间断的数字隔开,比如 for(int a = 5; a >= 1; a- ...
- 修改UITextView光标高度
自定义UITextView文字字体时,经常出现光标与字体的高度不匹配,可以通过下面代码修改默认的光标高度, //创建子类重写UITextView方法 - (CGRect)caretRectForPos ...
- python之面向对象之继承
#写一个类SchoolMember class SchoolMember(object): member_num = 0 def __init__(self,name,age,sex): self.n ...
- ImageView小技巧
ImageView截取图片的方式 centerCrop:以中心点为基准 将图片的最短边与ImageView宽度匹配 其他部分裁掉centerInside: 以中心点为基准 将图片最长边 缩进控件去
- 有关于mfc webbrowser插件的使用
最近写的东西中常常需要嵌入一些浏览器,微软提供了一个比较好的接口,可以在MFC写的程序中嵌入一个简易的浏览器,是以ActiveX插件的形式提供的接口,使用起来也比较的方便,这里我就简单记录下这个插件的 ...
- 01 Maven 安装与配置
Maven 安装与配置 1. Maven 介绍 Maven 翻译为 "专家","内行".Maven 是 Apache 下的一个纯 Java 开发的开源项目,它是 ...
- extjs 学习一
环境 : eclipse ext tomcat 6 将下载的extjs 解压后全部 导入到项目中 .使用时 <!-- 1.引入样式 2.引入库文件 ,底层驱动 3. ext-all--&g ...