一、初始mysql
mysql介绍:
mysql版本:
版本号=3个数字+1个后缀
mysql-5.0.9-beta
5 |
0 |
9 |
Beta |
主版本号 |
发行级别 |
|
发行稳定级别 |
发行系列 |
发行系列的版本号 |
|
注:
alpha:新版本,新功能,大量未测试代码
beta:完整版本,所有代码已被测试,没有已知bug
rc:发布版本,稳定
mysql产品分类:
1. MySQL Community Server社区版本,开源免费,但不提供官方技术支持
2. MySQL Enterprise Edition企业版本,付费,可以免费试用30天
3. MySQL Cluster集群版,开源免费,可见多个mysql server封装成一个server
4. MySQL Cluster CGE高级集群版,需付费
5. MySQL Workbench(GUI TOOL) 一款专为MySQL设计的ER/数据库建模工具。它是著名的数据库设计工具DBDesigner4的继任者。MySQL Workbench又分为两个版本,分别是社区版(MySQL Workbench OSS)、商用版(MySQL Workbench SE)。
MySQL Community Server 是开源免费的,这也是我们通常用的MySQL的版本。根据不同的操作系统平台细分为多个版本。
mysql下载
下载地址:http://www.mysql.com/downloads/
mysql安装方式
linux三种安装方式:rpm包安装,二进制形式安装,源码编译安装
linux三种安装方式的区别:
RPM |
二进制 |
源码 | |
优点 |
安装简单 |
安装简单,可以安装到任何路径下,灵活性好;一台服务器可以安装多个mysql |
可根据实际环境需求定制编译参数,最灵活;一台服务器可以安装多个mysql |
缺点 |
需要单独下载客户端和服务器; 安装路径不灵活,默认路径不能修改,一台服务器只能装一个mysql |
已经编译好,性能不如源码编译;不能灵活定制编译参数 |
安装过程较复杂,编译时间较长 |
1、rpm安装
mysql中rpm包类型的介绍:
MySQL-client 客户端组件
MySQL-debuginfo 调试MySQL的组件
MySQL-devel
想针对于MySQL编译安装PHP等依赖于MySQL的组件包
MySQL-embedded
MySQL的嵌入式版本
MySQL-server
共享库
MySQL-shared
共享库
MySQL-shared-dompat 为了兼容老版本的共享库
MySQL-test
MySQL的测试组件(在线处理功能)
安装方法:
首先可以从安装光盘中或者到mysql的网站上下载对应版本的rpm包如下:
MySQL-(Server|Client)-(community|enterprise)-(版本号).1.(操作系统类型).CPU类型(例如i386).rpm
MySQL-server-community-5.5.28-1.rhel5.i386.rpm
MySQL-client-community-5.5.28-1.rhel5.i386.rpm
接着我们可以使用rpm命令进行安装:
rpm -ivh MySQL-server-community-5.5.28-1.rhel5.i386.rpm
rpm -ivh MySQL-client-community-5.5.28-1.rhel5.i386.rpm
补充一点:
-h 使用符号#显示安装进度
-v 报告每一步操作的情况
-i 表示进行安装操作
2、通用二进制包安装
(1)新建用户以安全方式运行进程:
groupadd -r mysql useradd -g mysql -r -s /sbin/nologin -M -d /mydata/data mysql chown -R mysql:mysql /mydata/data
首先下载操作系统对应的mysql版本至本地,这里是32位操作系统,因此,选择的为mysql-5.5.28-linux2.6-i686.tar.gz(2)安装并初始化mysql-5.5.28
tar xf mysql-5.5.28-linux2.6-i686.tar.gz -C /usr/local cd /usr/local/ ln -sv mysql-5.5.28-linux2.6-i686 mysql cd mysql chown -R mysql:mysql . scripts/mysql_install_db --user=mysql --datadir=/mydata/data chown -R root .
(3)为mysql提供主配置文件:
cd /usr/local/mysql cp support-files/my-large.cnf /etc/my.cnf
(4)修改配置文件:
修改此文件中thread_concurrency的值为你的CPU个数乘以2,比如这里使用如下行:
thread_concurrency = 2
另外还需要添加如下行指定mysql数据文件的存放位置:
datadir = /mydata/data
(5)为mysql提供sysv服务脚本:
cd /usr/local/mysql cp support-files/mysql.server /etc/rc.d/init.d/mysqld
(6)添加至服务列表:
chkconfig --add mysqld
chkconfig mysqld on
(7)而后就可以启动服务测试使用了。
service mysqld start
3、源码编译
(安装编译方式有点改变,配置过程无太大变动,所以后面不详细介绍各个步骤了)
若想在5.0系列的红帽系统上进行源码编译安装MySQL必须借助一个跨平台编译器cmake
所以:
(1)首先安装cmake
安装cmake需要用make
tar xf cmake-...tar.gz cd cmake-.. ./bootstrap 使用此脚本来检测编译环境 make make install
(2)编译安装mysql-5.5.28
使用cmake编译mysql-5.5.28,选项的方式有所改变简单介绍一下。。。
cmake指定编译选项的方式不同于make,其实现方式如下:
cmake .
cmake . -LH 或 ccmake . 查找可以使用的相关选项
指定安装文件的安装路径时常用的选项:
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql 指定安装路径
-DMYSQL_DATADIR=/data/mysql
数据安装路径
-DSYSCONFDIR=/etc
配置文件的安装路径
由于MySQL支持很多的存储引擎而默认编译的存储引擎包括:csv、myisam、myisammrg和heap。若要安装其它存储引擎,可以使用类似如下编译选项:
-DWITH_INNOBASE_STORAGE_ENGINE=1
安装INNOBASE存储引擎
-DWITH_ARCHIVE_STORAGE_ENGINE=1
安装ARCHIVE存储引擎
-DWITH_BLACKHOLE_STORAGE_ENGINE=1
安装BLACKHOLE存储引擎
-DWITH_FEDERATED_STORAGE_ENGINE=1
安装FEDERATED存储引擎
若要明确指定不编译某存储引擎,可以使用类似如下的选项:
-DWITHOUT_<ENGINE>_STORAGE_ENGINE=1
比如:
-DWITHOUT_EXAMPLE_STORAGE_ENGINE=1
不启用或不编译EXAMPLE存储引擎
-DWITHOUT_FEDERATED_STORAGE_ENGINE=1
-DWITHOUT_PARTITION_STORAGE_ENGINE=1
如若要编译进其它功能,如SSL等,则可使用类似如下选项来实现编译时使用某库或不使用某库:
-DWITH_READLINE=1
-DWITH_SSL=system 表示使用系统上的自带的SSL库
-DWITH_ZLIB=system
-DWITH_LIBWRAP=0
其它常用的选项:
-DMYSQL_TCP_PORT=3306
设置默认端口的
-DMYSQL_UNIX_ADDR=/tmp/mysql.sock
MySQL进程间通信的套接字的位置
-DENABLED_LOCAL_INFILE=1
是否启动本地的LOCAL_INFILE
-DEXTRA_CHARSETS=all
支持哪些额外的字符集
-DDEFAULT_CHARSET=utf8
默认字符集
-DDEFAULT_COLLATION=utf8_general_ci
默认的字符集排序规则
-DWITH_DEBUG=0
是否启动DEBUG功能
-DENABLE_PROFILING=1
是否启用性能分析功能
如果想清理此前的编译所生成的文件,则需要使用如下命令:
make clean
rm CMakeCache.txt
编译安装
tar xf mysql-5.5.28.tar.gz cd mysql-5.5.28 groupadd -r mysql useradd -g -r mysql mysql mkdir -pv /data/mydata chown -R mysql:mysql /data/mydata cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_DATADIR=/data/mydata -DSYSCONFDIR=/etc -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_ARCHIVE_STORAGE_ENGINE=1 -DWITH_BLACKHOLE_STORAGE_ENGINE=1 -DWITH_READLINE=1 -DWITH_SSL=system -DWITH_ZLIB=system -DWITH_LIBWRAP=0 -DMYSQL_UNIX_ADDR=/tmp/mysql.sock -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci make make install cd /usr/local/mysql chown -R :mysql . 更改属组 scripts/mysql_install_db --user=mysql --datadir=/data/mydata/ 指定数据存放位置 cp support-files/my-large.cnf /etc/my.cnf 创建配置文件
编辑配置文件
vim /etc/my.cnf
添加如下行指定mysql数据文件的存放位置:
datadir = /mydata/data
创建执行脚本和启动服务
cp support-files/mysql.server /etc/rc.d/init.d/mysqld 复制脚本 chmod +x /etc/rc.d/init.d/mysqld 执行权限 chkconfig -add mysql 添加到服务列表中 service mysqld start 启动服务 bin/mysql 启动mysql
卸载方法:
#rpm –ev MySQL-server-5.1.72-1.glibc23
mysql目录介绍
/usr/bin --客户端程序和脚本 /usr/sbin --mysqld服务器程序 /var/lib/mysql --日志文件和数据文件 /usr/share/doc/packages --文档 /usr/include/mysql --头文件 /usr/lib/mysql --库文件 /usr/share/mysql --错误消息和字符集文件 /usr/share/sql-bench --基准程序
windows两种安装方式:mysql安装包方式安装,mysql压缩包方式安装
mysql安装包方式安装:msi安装,双击启动安装程序,然后一步一步点击安装就可以了。
mysql压缩包方式安装: 解压压缩包,把解压后目录下的bin目录添加到path环境变量中。以管理员身份运行命令行,进入对应的bin目录,注意一定要进入目录后输入mysqld -install进行安装, 否则net start mysql会出现系统错误2,输入mysqld -install ,另外mysqld -remove是移除mysql,卸载的时候有用。最后在命令行中输入net start mysql,启动mysql服务。配置先在mysql目录下的my-default.in复制成另一份my.ini,然后再my.ini中配置,在my-default.ini配置目测是没有用的,在my-default.ini修改的端口,但是net start mysql,使用的端口依然为3306。