一、初始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.-linux2.-i686.tar.gz -C /usr/local

 cd /usr/local/

 ln -sv mysql-5.5.-linux2.-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..tar.gz

 cd mysql-5.5.

 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= -DWITH_ARCHIVE_STORAGE_ENGINE= -DWITH_BLACKHOLE_STORAGE_ENGINE= -DWITH_READLINE= -DWITH_SSL=system -DWITH_ZLIB=system -DWITH_LIBWRAP= -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。

mysql初识笔记的更多相关文章

  1. 初识mysql学习笔记

    使用VMVirtualBox导入Ubuntu后,可以通过sudo apt-get install mysql-server命令下载mysql. 在学习过程中,我遇到了连接不上Xshell的问题.最终在 ...

  2. Mysql学习笔记(三)对表数据的增删改查。

    正文内容. 这一部分是最简单的,也是最麻烦的.简单是因为其实只包括增删该插四个部分.大体上看,增加数据.删除数据.修改数据.查询数据都不麻烦啊,我们日常都是常用的.这个谁不会呢?以前在培训机构学mys ...

  3. MySQL学习笔记一

    MySQL 学习笔记 一 一.数据库简单介绍 1. 按照数据库的发展时间顺序,主要出现了以下类型数据库系统: Ø 网状型数据库 Ø 层次型数据库 Ø 关系型数据库 Ø 面向对象数据库 上面4中数据库系 ...

  4. MYSQL基础笔记(六)- 数据类型一

    数据类型(列类型) 所谓数据烈性,就是对数据进行统一的分类.从系统角度出发时为了能够使用统一的方式进行管理,更好的利用有限的空间. SQL中讲数据类型分成三大类:1.数值类型,2.字符串类型和时间日期 ...

  5. MYSQL基础笔记(五)- 练习作业:站点统计练习

    作业:站点统计 1.将用户的访问信息记录到文件中,独占一行,记录IP地址 <?php //站点统计 header('Content-type:text/html;charset=utf-8'); ...

  6. MYSQL基础笔记(四)-数据基本操作

    数据操作 新增数据:两种方案. 1.方案一,给全表字段插入数据,不需要指定字段列表,要求数据的值出现的顺序必须与表中设计的字段出现的顺序一致.凡是非数值数据,到需要使用引号(建议使用单引号)包裹. i ...

  7. MYSQL基础笔记(三)-表操作基础

    数据表的操作 表与字段是密不可分的. 新增数据表 Create table [if not exists] 表名( 字段名 数据类型, 字段名 数据类型, 字段n 数据类型 --最后一行不需要加逗号 ...

  8. MYSQL基础笔记(二)-SQL基本操作

    SQL基本操作 基本操作:CRUD,增删改查 将SQL的基本操作根据操作对象进行分类: 1.库操作 2.表操作 3.数据操作 库操作: 对数据库的增删改查 新增数据库: 基本语法: Create da ...

  9. MYSQL基础笔记(一)

    关系型数据库概念: 1.什么是关系型数据库? 关系型数据库:是一种建立在关系模型(数学模型)上的数据库 关系模型:一种所谓建立在关系上的模型. 关系模型包含三个方面: 1.数据结构:数据存储的问题,二 ...

随机推荐

  1. C函数指针状态机实现

    C函数指针状态机实现 有限状态机(finite state machine)简称FSM,表示有限个状态及在这些状态之间的转移和动作等行为的数学模型,在计算机领域有着广泛的应用.FSM是一种逻辑单元内部 ...

  2. Java 前后端分离项目:微人事

    本文适合刚学习完 Java 语言基础的人群,跟着本文可了解和运行项目,本示例是在 Windows 操作系统下演示. 本文作者:HelloGitHub-秦人 大家好!这里是 HelloGitHub 推出 ...

  3. SpringCloud(二)- 服务注册与发现Eureka

    离上一篇微服务的基本概念已经过去了几个月,在写那篇博客之前,自己还并未真正的使用微服务架构,很多理解还存在概念上.后面换了公司,新公司既用了SpringCloud也用了Dubbo+Zookeeper, ...

  4. jasypt

    jasypt-1.9.0.jar import org.jasypt.encryption.pbe.StandardPBEStringEncryptor; public class EncryptUt ...

  5. HZNU Training 2 for Zhejiang Provincial Collegiate Programming Contest 2019

    赛后总结: T:今天下午参加了答辩比赛,没有给予队友很大的帮助.远程做题的时候发现队友在H上遇到了挫折,然后我就和她们说我看H吧,她们就开始做了另外两道题.今天一人一道题.最后我们在研究一道dp的时候 ...

  6. CodeForces - 1118 F2 Tree Cutting

    题目传送门 题解: 先注意到一定存在k种颜色,切成k个块, 然后要求每个块内的颜色都一样,所以可以发现同一种颜色一定在同一个块内,故任意2个相同颜色的最短路劲上的点的颜色都是该颜色. 我们可以先把任意 ...

  7. Atcoder F - Mirrored(思维+搜索)

    题目链接:http://arc075.contest.atcoder.jp/tasks/arc075_d 题意:求rev(N)=N+D的个数,rev表示取反.例如rev(123)=321 题解:具体看 ...

  8. 洛谷 P1666 前缀单词 题解

    题意:给n个单词,如果单词a为单词b的前缀则a,b不能共存,问能共存的集合数(包括空集) 一道dp题,排序后判断,f[i][j]表示i和j是否能共存,f[i][j]=1表示能共存,初始化dp[i]=1 ...

  9. Shiro实现用户对动态资源细粒度的权限校验

    前言 在实际系统应用中,普遍存在这样的一种业务场景,需要实现用户对要访问的资源进行动态权限校验. 譬如,在某平台的商家系统中,存在商家.品牌.商品等业务资源.它们之间的关系为:一个商家可以拥有多个品牌 ...

  10. Spring 两大核心 IOC 和 AOP

    如果你的简历上写着Spring (请详述一下spring的两大核心)这个问题一定会被问到. 一.什么叫IOC 1. IOC 全称(Inversion of Control)-- 控制反转. IOC 只 ...