1.准备工作

为了避免发生端口冲突,程序冲突等现象,建议先查询MySQL软件的安装情况,确认没有使用rpm方式安装的mysql-server,mysql软件包,否则建议将其卸载。

[root@server ~]#rpm -q mysql-server mysql

2.创建运行用户

为了加强数据库服务的权限控制,建议使用专门的运行用户,如mysql。

[root@server ~]#useradd -M -u 58 -s /sbin/nologin mysql

3.解包

[root@server ~]#cd /usr/src/

[root@server src]#tar zxf mysql-5.1.55.tar.gz

4.配置

在内容丰富,结构庞大的企业网站平台中,可能会用到多种字符集的网页,相应的数据库系统也应该支持不同的字符集编码。

[root@server src]#cd mysql-5.1.55/

[root@server mysql-5.1.55]#./configure --prefix=/usr/local/mysql --with-charset=utf8 --with-collation=utf8_general_ci --with-extra-charsets=gbk,gb2312

--prefix:指定安装目录。

--with-charset:指定默认使用的字符集编码,应与校对规则相对应,如utf-8。

--with-collation:指定默认使用的字符集校对规则,utf8_general_ci是适用于utf-8字符集的通用规则。

--with-extra-charset指定额外支持的其他字符集编码,如gbk,gb2312等。

[root@server mysql-5.1.55]#vim include/config.h

#define HAVE_CHARSET_gbk 1

#define HAVE_CHARSET_gb2312 1

5.编译并安装

[root@server mysql-5.1.55]#make && make install

6.建立配置文件

在MySQL源码目录中的support-files文件夹下,提供了适合不同负载数据库的样本配置文件。如果不确定数据库系统的应用规模,一般选择my-medium.cnf文件即可,该文件能够满足大多数企业的中等应用需求。

[root@server mysql-5.1.55]#cp support-files/my-medium.cnf /etc/my.cnf

7.初始化数据库

以mysql身份初始化数据库,并为mysql设置权限

[root@server mysql-5.1.55]#cd /usr/local/mysql/bin/

[root@server bin]#./mysql_install_db --user=mysql

[root@server bin]#chown -R root:mysql /usr/local/mysql/

[root@server bin]#chown -R mysql /usr/local/mysql/var/

8.优化执行路径,程序库路径

[root@server bin]#ln -s /usr/local/mysql/bin/* /usr/local/bin/

[root@server bin]#ln -s /usr/local/mysql/lib/mysql/* /usr/lib/

[root@server bin]#ln -s /usr/local/mysql/include/mysql/* /usr/include/

9.添加系统服务

[root@server bin]#cd /usr/src/mysql-5.1.55/

[root@server mysql-5.1.55]#cp support-files/mysql.server /etc/rc.d/init.d/mysqld

[root@server mysql-5.1.55]#chmod a+x /etc/rc.d/init.d/mysqld

[root@server mysql-5.1.55]#chkconfig --add mysqld

[root@server ~]#service mysqld start

[root@server ~]#netstat -anpt | grep mysqld

3306

10.访问数据库

经过安装后的初始化过程,MySQL数据库的默认管理员帐号为root,密码为空。

[root@server ~]#mysql -u root      //-u选项后接用户名

[root@server ~]#mysql -h 192.168.1.1 -u admin -p

mysql>... ...;