1.win7 64ä½ å¦ä½è¿è¡mysql.exe
2.freebsd9.1源码安装apache.mysql.php环境
3.如何选择合适的MySQL版本进行下载mysql下载哪版
4.关于mysql底层的一些疑问:1.mysql底层数据是如何存储的2
win7 64ä½ å¦ä½è¿è¡mysql.exe
windowså®è£ mysql-5.6.-win.zip
1ã解å缩,æ¯å¦å°d:\ï¼ä¸ºäºæ¹ä¾¿ï¼æ¹ä¸ä¸è·¯å¾ï¼æ¯å¦mysql
2ãWiné®+x+æaï¼è¿å ¥cmdå½ä»¤è¡(管çå模å¼)
d:
cd mysql\bin
å®è£ mysqlæå¡
mysqld.exe âinstall (é»è®¤æå¡å称æ¯mysqlæè mysqld.exe âinstall âmysql5â³ä¿®æ¹æå¡å称)
å é¤mysqlæå¡
mysqld.exe âremove(æè mysqld.exe âremove âmysql5â³)
3ãiniåæ°é ç½®æ件d:\mysql\
å°my-default.iniæ¹å为my.ini
4ãå¯å¨åæ¢æå¡
a)å¨å½ä»¤è¡å¯å¨/åæ¢
net start mysql
net stop mysql
b)æè å»æ§å¶é¢æ¿/管çä¸å¿/æå¡ï¼æ¾mysqlå¯å¨
c)æè å¼å§/è¿è¡è¾å ¥services.mscï¼ç¡®å®åï¼æ¾å°mysqlå¯å¨
freebsd9.1源码安装apache.mysql.php环境
新手不建议用源码安装,请慎重1.安装9.1系统
2.通过Sysinstall安装预装软件
=========================================================
3.安装Linux_libio兼容包
rc.conf 增加一句linux_enable=true 应该是 linux_enable="YES"
========================================================
4.通过ports安装SSH守护进程(ports/security/sshgard)
5.通过Ports安装加密相关的软件(ports/security/mcrypt)
6.安装MYSQL
7.安装apr(/configure ,make install clean)
8.安装apr-util1.5.1(/configure --with-apr=/usr/local/apr)
9.安装Apache
. 安装PHP
.安装FastCGI
.安装Xcache
.安装Memcache
.安装Proftpd
Freebsd支持中文.txt
设置全局的 locale 参考下面方法:
vi /etc/login.conf
最后增加这个:
chinese:Chinese Users Accounts:/
:charset=UTF-8:/
:lang=zh_CN.UTF-8:/
:tc=default:
然后修改你的passwd文件,使用vipw命令
user:password:::language:0:0:User Name:/home/user:/bin/sh
language位置写入chinese,关联上你的locale。
export LC_CTYPE="zh_CN.UTF-8"
export LC_ALL="zh_CN.UTF-8"
export LANG="zh_CN.UTF-8"
需要更新一下数据库,使用 cap_mkdb /etc/login.conf
登出再登录,fomosd源码分析使用命令 locale 就可以看到你的 locale 已经修改完成了
php需要环境.txt
1.curl,gd,mbstring,jpeg,png,php_memcache,xcache,mysql,apache
安装时都需要指定安装目录
Robin_预装包.txt
通过Sysinstall安装(光盘)
1.archives:libzip;zip;unzip
2.databases: sqlite
3.converters: libiconv(php用于编码转换)
4.devel: pre-8.l(Apache);perl-5..4.3
5.emulators: linux_base兼容包
6.FTP: curl-1..3.2
7.graphics: giflib-4.1.6 ; jpeg-8.3 ; libexif-0.6. ; png-1.4.8
8.lang: perl-5..4.3 ; python ; ruby
9.all: libxml2-7.8-1 , freetype
ports/emulators/linux_libauo
ports/security/sshguard
ports/security/mcrypt
kldstat 命令内核挂载情况,是否关在linux.ko
开始安装
1、安装mysql
创建用户组mysql
shellpw groupadd mysql
添加用户至用户组
shell pw useradd -r -g mysql mysql
解压:因为mysql是已经编译好的版本,因此无需安装
cd /soft
tar –vzxf mysql-5.6..tar.gz 解压
mv mysql-5.6.-free* /usr/local/servers/mysql
cd /usr/local/shadow/mysql
chown –R mysql . 更改当前文件夹下所有文件的用户(注意后面有.)
chgrp –R mysql . 更改当前文件夹下所有文件的组
./scripts/mysql_install_db –user=mysql 安装mysql服务,会生成一个my.cnf的配置文件
chown –R root . 修改mysql文件夹内所有文件用户为root
chown –R mysql data修改mysql文件夹内data文件夹用户为mysql
./bin/mysqld_safe –user=mysql 启动mysql服务
./bin/mysql –u root –p 密码为空
use mysql
Delete from user where host’.0.0.1’;
select host,user,password from user;
update user set host=’%’,password=password(‘shadow’); //修改登录ip为任意;密码为shadow
flush privileges; //刷新mysql帐号权限
然后远程连一下数据库试试吧。。
初始化root密码
bin/mysqladmin -u root password 'newpassword'
bin/mysqladmin –u root password
./mysqladmin -u root -p password ''
然后系统会询问你现在的密码,你输入现在的密码回车就可以了
下次使用MYSQL的时候,ROOT 的口令就是了
测试帐号
bin/mysql –u root –p
然后输入密码,出现提示符:
mysql
技巧提示:
mysql #运行mysql 客户端,并开放root用户的远程访问权限。以便调试
use mysql
update user set host = '%' where user = 'root' and host 'localhost';
flush privileges;
quit
2、幂等源码apache安装
Step 1
编译Apache的要求
1. 磁盘空间 2.ANSI- C编译器及编译环境 3.确保准确的时间 4.Perl5 [可选]
5. apr/apr-util = 1.2
需要先下载 apr-1.4.6.tar.gz 和 apr-util-1.5.1.tar.gz
配置并安装 地址 f 中的 innodb_file_per_table 参数来控制是否使用系统表空间或独立表空间存储数据。
独立表空间的结构包括多个段,常见的段有数据段、索引段、回滚段等。向表中插入一条记录时,本质上是在聚簇索引和所有二级索引代表的 B+ 树节点中插入数据。InnoDB 对 B+ 树的apollo源码结构叶子节点和非叶子节点采取区别对待,即叶子节点有自己独有的区,非叶子节点也有自己独有的区。每个索引会生成两个段,一个叶子节点段和一个非叶子节点段。每个索引段的大小通常为 KB,若索引键大小超过 KB,则需要使用多个索引段。
每个段维护了一个 INODE Entry 结构来记录段的感应灯源码属性,而段链表则用于管理段中的区。
不论是系统表空间还是独立表空间,都可以视为由若干个区组成,每个区默认占用 1MB 空间,由连续的 个页组成。区中的页在物理空间上是连续的,这有助于减少随机 IO 操作,提高读取速度。准指标源码区链表和碎片区则分别用于管理区的分配和存储额外空间。
数据页是数据库读写操作的最小单位,通常大小为 KB,页中记录按照行存储,但数据库读取是以页为单位。页目录作为记录的索引,存储每组最后一条记录的地址偏移量。数据页中的记录(User Record)按照主键顺序形成单向链表,并且记录组最后一条记录存储了该组的记录总数。
MySQL 支持四种行格式:Redundant、Compact、Dynamic 和 Compressed。Compact 格式是设计用于提高数据行密度,Compact 格式下记录头和隐藏列与 Redundant 相同,但记录头信息更简洁,减少了存储空间,适用于大长度类型数据的压缩存储。
数据字典包含表结构、数据库名或表名、字段数据类型、视图、索引、表字段信息、存储过程、触发器等元数据,这些信息在 MySQL8.0 以前以文件形式存储,MySQL8.0 以后全都存放在数据库系统表中。
总结,MySQL 的逻辑存储结构分为表空间、段、区和页,数据页是读写的基本单位,而区有助于减少随机 IO 操作并提高查询效率。不同的区可以分配给不同的段,以便更高效地管理数据和提高空间利用率。
下一部分将介绍 MySQL 的逻辑架构和 SQL 语句的具体执行流程。