1.1 检查数据库使用的字符集

检查数据库使用的字符集是否都是utf8,如不是,请修改字符集为utf8

步骤 1 以root用户登录数据库服务器。

步骤 2 登录MySQL数据库。

mysql -uroot -p123456

步骤 3 输入命令查看字符集。

SHOW VARIABLES LIKE 'character_set_%';

l 如果显示如下则表示所使用的字符集都是utf8,不需要再修改。

 

l 如果显示如下则需要进行字符集的修改,请参见如下步骤。

 

  1. 如果字符集不是utf8,则需要修改my.cnf文件。先退出MySQL(使用命令:exit;)

exit;

  1. 打开“/etc/my.cnf”文件。

vi /etc/my.cnf

  1. 按“i”键进入编辑状态。
  2. 设置客户端编码格式为“utf8”。

在如下所示的信息中,插入蓝色字体部分设置客户端的编码格式为utf8

[client]

default-character-set=utf8

#password       = your_password

port            = 3306

socket          = /var/lib/mysql/mysql.sock

  1. [mysqld]后插入蓝色字体部分,实现用IP地址远程连接MySQL及配置数据表等功能。

# The MySQL server

[mysqld]

default-character-set=utf8

lower_case_table_names=1

max_connections=300

default-storage-engine=InnoDB

query_cache_size = 16M

skip-name-resolve

tmp_table_size=64M

max_heap_table_size=64M

配置参数说明如下:

l default-character-set:用来设置服务器的编码格式默认为utf8。

l lower_case_table_names:用来设置MySQL不区分大小写0表示区分大小写,1表示不区分大小写)。

l max_connections:用来设置数据库的最大连接数。

l default-storage-engine:将数据库默认的引擎设置为InnoDB

l query_cache_size:用来设置查询缓存的大小。

l skip-name-resolve:用来实现用IP地址远程连接MySQL的功能。

l tmp_table_size:用来设置临时HEAP数据表的最大长度,超过这个长度的临时数据表将被转换为MyISAM数据表并存入一个临时文件。

l max_heap_table_size:用来设置HEAP数据表的最大长度,超过这个长度的HEAP数据表将被存入一个临时文件而不是驻留在内存里。

  1. 注释或删除“log-bin=mysql-bin”信息。

#skip-networking

# Replication Master Server (default)

# binary logging is required for replication

# log-bin=mysql-bin

  1. 按“Esc”键后,输入“:wq!”保存并退出文件。
  2. 重新启动MySQL

service mysql restart

  1. 登录MySQL数据库,再查看一下MySQL数据库字符集。

mysql -u root -p123456

show variables like 'character%';

 

此时字符集显示为utf8

  1. 退出mysql

exit;

----结束

 

 

1.2 安装MySQL数据库

注:请确认要使得linux系统的位数和数据库的位数相同(要么都是32位,要么都是64位的)

下载连接:http://dev.mysql.com/downloads/mysql/5.5.html#downloads

请确认服务器上是否已安装了MySQL5.1及其以上版本。如果已经安装了符合版本的MySQL数据库可以直接按照2.3 配置MySQL数据库进行相应的配置。

步骤 1 以root用户登录服务器。

步骤 2 检查服务器上是否已安装了MySQL

rpm -qa|grep -i mysql

l 如果显示如下信息,则表示安装的MySQL数据库符合要求,无需卸载和重新安装,请直接跳过本节。

MySQL-client-community-5.1.XX-1.rhel5

MySQL-server-community-5.1.XX-1.rhel5

l 如果显示的版本不符合要求,则请先完全卸载后,再安装MySQL

方案一:

卸载MySQL的方法为“rpm -e 查询到的MySQL安装包名称”:

rpm -e MySQL-devel-community-5.1.XX-0.rhel5

rpm -e MySQL-server-community-5.1.XX-0.rhel5

rpm -e MySQL-client-community-5.1.XX-0.rhel5

同时请删除其它目录下的配置和数据文件。

rm -f /etc/my.cnf

rm -rf /var/lib/mysql

方案二:

执行命令:rpm -qa|grep MySQL | xargs rpm -e --allmatches --nodeps

或rpm -qa|grep mysql | xargs rpm -e --allmatches --nodeps

l 如果没有任何版本信息,则需要安装MySQL数据库。

步骤 1 通过SSHXFTP等工具将MySQL 5.1版本的软件包上传到“/tmp”目录下。

l MySQL-client-community-5.1.XX-0.rhel5.i386.rpm(必须的,如果不按照它,在linux中不能执行mysql或mysqladmin命令)

l MySQL-server-community-5.1.XX-0.rhel5.i386.rpm(必须的)

l MySQL-devel-community-5.1.XX-0.rhel5.i386.rpm

l MySQL-shared-community-5.1.XX-0.rhel5.i386.rpm

 

MySQL-devel主要为开发或编译MySQL程序提供所需的头文件和静态链接库。

MySQL-shared包含客户机程序的共享库。

以上两个组件如果没有使用到可以不安装,所以查询时,如果没有显示MySQL-develMySQL-shared也属于正常情况。

 

步骤 3 进入“tmp”目录。

cd /tmp/

步骤 4 安装MySQL服务端。

rpm -ivh MySQL-server-community-5.1.XX-0.rhel5.i386.rpm

步骤 5 安装MySQL客户端。

rpm -ivh MySQL-client-community-5.1.XX-0.rhel5.i386.rpm

步骤 6 (可选)安装devel。

 

MySQL-devel主要提供所需头文件和静态链接库,主要用作开发或编译MySQL程序,如不需要,可以不安装。

 

rpm -ivh MySQL-devel-community-5.1.XX-0.rhel5.i386.rpm

步骤 7 (可选)安装shared

 

MySQL-shared包含客户机程序的共享库,如不需要,可以不安装。

 

rpm -ivh MySQL-shared-community-5.1.XX-0.rhel5.i386.rpm

----结束

 

注:mysql的默认用户是root,密码是空(即不用输入密码);访问mysql命令为mysql -uroot -p提示输入密码,直接按enter。

1.3 配置MySQL数据库

安装MySQL后,需配置完成才能使用正常使用,本节介绍MySQL的配置方法。

步骤 1 以root用户登录数据库服务器。

步骤 2 启动MySQL数据库。

service mysql start

系统显示如下信息,表示启动成功:

Starting MySQL                                             [确定]

步骤 3 设置root用户的密码。

mysqladmin -u root password '123456'

如果已设置MySQL数据库的登录密码,系统会显示如下所示信息。

mysqladmin: connect to server at 'localhost' failed

error: 'Access denied for user 'root'@'localhost' (using password: NO)'

步骤 4 登录MySQL

mysql -uroot -p123456

步骤 5 允许远程连接并刷新生效。

grant all on *.* to 'root'@'%' identified by '123456' WITH GRANT OPTION;

FLUSH PRIVILEGES;

步骤 6 退出MySQL

exit;

步骤 7 使用远程连接MySQL 5.1时候,需配置“/etc/my.cnf”文件。

复制“/usr/share/doc/MySQL-server-community-5.1.XX/my-huge.cnf”文件到“/etc目录下,并重命名为“my.cnf

cp /usr/share/doc/MySQL-server-community-5.1.XX/my-huge.cnf /etc/my.cnf

步骤 8 重启MySQL使设置生效。

service mysql restart

----结束

注;当执行#mysql -u root -p报错ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2) 时,进行如下命令:

#ps -A|grep mysql

   显示类似:

 

  1829 ?        00:00:00 mysqld_safe
   1876 ?        00:00:31 mysqld

 

  2.#kill -9 1829

 

  3.#kill -9 1876

 

  4.#/etc/init.d/mysql restart

 

  5.#mysql -u root -p

 

1.4 检测MySQL数据库

步骤 1 以root用户登录数据库服务器。

步骤 2 检测MySQL是否随系统启动。

chkconfig --list mysql

若MySQL随机启动,则显示如下信息:

mysql           0:关闭  1:关闭  2:启用  3:启用  4:启用  5:启用  6:关闭

如果没有显示mysql项,则需输入命令加入到系统的启动服务组中:

chkconfig --add mysql

如果2~5中有“关闭”,需进行启动。例如,当2为“关闭”状态时,需将它切换到“启动”状态,请输入如下命令:

chkconfig --level 2 mysql on

----结束

1.5 导入数据库脚本

步骤 1 以root用户登录MySQL服务器。

步骤 1 通过SSH或XFTP等工具将数据库脚本文件上传到Linux服务器的“/tmp”目录下。

步骤 2 检测MySQL数据库是否启动。

service mysql status

如未启动请使用如下命令启动:

service mysql start

步骤 3 登录MySQL

mysql -uroot -p123456

步骤 4 在mysql>提示符下输入如下命令,导入“init.sql”脚本初始化数据库。

source /tmp/init.sql

 

若所有的数据库脚本是上传至/tmp/目录下,需要在init.sql中的每行增加/tmp/,例如:source /tmp/ init.sql;如果上传至家目录,则不用作任何修改。

 

步骤 5 在mysql>提示符下输入如下命令,查看创建的数据库是否成功。

show databases;

系统显示如下信息中有数据库,说明创建数据库成功。

+--------------------+

| Database           |

+--------------------+

| information_schema |

| ads                |

| cpmdb              |

| ispace             |

| mydatabases        |

| mysql              |

| test               |

+--------------------+

步骤 6 退出MySQL

exit;

----结束