快速安装步骤:
shell> groupadd mysql
shell> useradd -g mysql mysql
shell> gunzip < mysql-VERSION.tar.gz | tar -xvf -
shell> cd mysql-VERSION
shell> ./configure --prefix=/usr/local/mysql
shell> make
shell> make install
shell> cp support-files/my-medium.cnf /etc/my.cnf
shell> cd /usr/local/mysql
shell> bin/mysql_install_db --user=mysql
shell> chown -R root .
shell> chown -R mysql var
shell> chgrp -R mysql .
shell> bin/mysqld_safe --user=mysql &
shell的解释:
这是描述在Linux的shell环境下进行操作,如使用SSH或者TELNET登录到Linux时,看到:
[root@guigu home]#
现在让我们详细了解,他
都在做什么~
shell> groupadd mysql shell> useradd -g mysql mysql
groupadd和useradd是Linux下创建
用户组和用户的命令,上边的命令使我们分别创建了mysql组和用户
shell> gunzip < mysql-VERSION.tar.gz | tar -xvf -
gunzip是Linux下解压缩的命令,同等功能的命令如:tar,可根据个人喜好任意使用,参考命令:
tar -zvxf mysql-4.1.18.tar.gz
shell> cd mysql-VERSION
因为
INSTALL-SOURCE文档,会在不同版本的文件包中出现,这里提示进入当前版本的文件夹,参考:
1.cd mysql-4.1.18
下面我们将进入编译前的
配置:
shell> ./configure --prefix=/usr/local/mysql
./configure是Linux环境在自己编译前,所必需的环节,除极个别的
程序,也会在安装文档中作出提示,但很少见。
如上命令将指定我们新安装得MySQL将被安装在/usr/local/mysql文件夹下。
提示1:在安装前,请检查/usr/local文件夹下是否已经存在mysql文件夹。
提示2:关于改变默认字符集就是在此进行指定,如果你的程序需要使用UTF8,或者GB2312,应该如下使用:
./configure --prefix=/usr/local/mysql --with-charset=gb2312
提示1:其中的gb2312可以替换为gbk或者utf8
提示2:如果我们在现有基础上还需要其他的字符集,就应该增加扩展字符集,参考如下:
./configure --prefix=/usr/local/mysql --with-charset=gb2312 --with-extra-charsets=gbk,utf8
注:这样的配置的结果为:默认字符集为gb2312但同时支持gbk和utf8。
使用方式:gbk和utf8编码的使用,需要在创建
数据库时选择字符集,并在程序中加入如:SET NAMES GBK
shell> make
make既:编译,需要一定的
时间才可完成,取决于你所使用
计算机的运行速度。一般的状况为10~30分钟不等。
提示:如果你的Linux安装的相对完整,编译一般会正常运行,无需担心。
影响编译的相关软件为gcc编译器等,但作为现有的Linux发行版本中此问
题已经极少出现。
shell> make install
完成编译工作,并将编译的结果正确的拷贝到相应的位置。
shell> cp support-files/my-medium.cnf /etc/my.cnf
这个命令是将mysql-4.1.18源码文件夹中support-files中的my-medium.cnf文件拷贝到/etc文件夹下,并重命名为my.cnf
提示:在support-files中提供了不同环境中所需要使用的
配置文件,如:
my-small.cnf /* 如果
系统的内存小于64兆,需要选择此文件
my-medium.cnf /* 如果系统的内存大于128兆,可以选择此文件
my-large.cnf /* 如果系统的内存为512兆,需要选择此文件
my-huge.cnf /* 如果系统的内存是1G~2G,需要选择此文件
my-innodb-heavy-4G.cnf /* 如果系统的内存为4G内存-事务,可以选择此文件
注:如上的文件其中一个选项必须需要
关注,如下:
# Try number of CPU's*2 for thread_concurrency
thread_concurrency = 2
其中的thread_concurrency的值为你的计算机所使用CPU的数量x2
shell> cd /usr/local/mysql shell> bin/mysql_install_db --user=mysql
进入刚刚安装好的mysql目录,并执行bin文件夹下mysql_install_db --user=mysql
初始化MySQL数据库
shell> chown -R root . shell> chown -R mysql var shell> chgrp -R mysql .
使用chown和chgrp命令进行mysql文件夹及子文件--属性的设定,范例:
chown mysql xxx
xxx文件夹只能root用户读取
chgrp mysql xxx
xxx文件夹只能mysql组用户读取
注:-R包含子文件夹及文件。
shell> bin/mysqld_safe --user=mysql &
启动MySQL数据库,并由mysql用户身份运行。
关于数据库的安全停止:
很
多人不知道该
如何停止数据库--就用kill杀,实际上是错误的,只是很少人注意,且网上没有相关的
资料罢了:
1.使用mysqladmin
mysqladmin -u root -p shutdown
2.在support-files文件夹中有一个文件mysql.
server,我们使用如下命令进行设置:
- chmod +x mysql.server
然后再把它拷贝到需要放置的文件夹即可使用,如:cp mysql.server /etc/init.d
调用:
- /etc/init.d/mysql.server stop
如上,在Linux环境下自己编译MySQL初步完成了,应该如何正确的应用去参考孵化池内--玩转phpMyAdmin系列。