当前位置:文档之家› MYSQL安装和维护手册

MYSQL安装和维护手册

Mysql安装和维护手册目录1.在Linux下安装Mysql (3)1.1RPM安装MySQL (3)1.2源码安装mysql (4)1.3Mysql管理 (6)3.Mysql的配置管理 (8)4.Mysql复制管理 (12)4.1现有分布式数据库架构 (12)4.2主从异步同步配置操作实例 (12)4.3半同步复制 (14)5.Mysql多实例配置 (15)1.在Linux下安装Mysql1.1RPM安装MySQL建议在Linux中使用RPM包来安装MySQL。

MySQL RPM目前已经嵌入到SuSE Linux 7.3系统中,但是应当能在大多数支持rpm和使用glibc的Linux版本中工作。

MySQL AB不提供与具体平台相关的RPM;具体平台相关的RPM和通用RPM之间的区别是具体平台相关RPM为目标平台而构建,为动态连接。

而通用RPM与Linux线程之间是静态连接。

注释:通常由其它供应商提供MySQL的RPM分发版。

其特征和功能与MySQL AB所构建的不同,该手册中的指令不一定适合安装其它供应商提供的MySQL的RPM分发版。

此时应咨询供应商的说明。

在大多数情况,你只需要安装MySQL-server和MySQL-client软件包来安装MySQL。

在标准安装中不需要其它的包。

如果安装MySQL软件包时出现从属错误(例如,“error:removing these packages would break dependencies:libmysqlclient.so.10is needed by..”),你还应当安装包MySQL-shared-compat,其中包括两个向后兼容的共享库(MySQL4.0为libmysqlclient.so.12,MySQL3.23为libmysqlclient.so.10)。

可以使用以下RPM包:·MySQL-server-VERSION.glibc23.i386.rpmMySQL服务器。

你需要该选项,除非你只想连接运行在另一台机器上的MySQL服务器。

注释:在MySQL4.0.10之前,服务器RPM文件被称为MySQL-VERSION.i386.rpm。

也就是说,名称中不含有-server。

·MySQL-client-VERSION.glibc23.i386.rpm标准MySQL客户端程序。

你可能总是要安装该软件包。

·MySQL-devel-VERSION.glibc23.i386.rpm库和包含文件,如果你想要编译其它MySQL客户端,例如Perl模块,则需要。

·MySQL-shared-VERSION.glibc23.i386.rpm该软件包包含某些语言和应用程序需要动态装载的共享库(libmysqlclient.so*),使用MySQL。

·MySQL-shared-compat-VERSION.glibc23.i386.rpm该软件包包括MySQL3.23和MySQL4.0的共享库。

如果你安装了应用程序动态连接MySQL3.23,但是你想要升级到MySQL4.0而不想打破库的从属关系,则安装该软件包而不要安装MySQL-shared。

从MySQL4.0.13起包含该安装软件包。

·MySQL-embedded-VERSION.glibc23.i386.rpm嵌入式MySQL服务器库(从MySQL4.0起)。

·MySQL-VERSION.glibc23.i386.rpm包含以前所有软件包的源码。

可用来在其它架构上重建RPM(例如,Alpha或SPARC)。

要想看到RPM软件包内的所有文件(例如,MySQL-server RPM),运行:shell>rpm-qpl MySQL-server-VERSION.i386.rpm要想执行标准最小安装,运行:shell>rpm-i MySQL-server-VERSION.i386.rpmshell>rpm-i MySQL-client-VERSION.i386.rpm要想只安装客户端软件包,运行:shell>rpm-i MySQL-client-VERSION.i386.rpmRPM提供在安装软件包前验证其完整性和真实性的功能。

服务器RPM将数据放入/var/lib/mysql目录。

RPM还为mysql用户创建登录账户(如果还没有),用来运行MySQL服务器,并在/etc/init.d/创建相应条目,以便在引导时自动启动服务器。

(这意味着如果你已经安装并且已经更改启动脚本,你可能要复制脚本,以便你安装新RPM时不会丢掉脚本)。

如果想要在旧的不支持/etc/init.d(直接或通过符号连接)初始化脚本的Linux分发版中安装MySQL RPM,你应当创建一个指向初始化脚本实际安装的位置的符号连接。

例如,如果安装位置为/etc/rc.d/init.d,安装RPM前使用这些命令创建/etc/init.d,作为指向该位置的符号连接:shell>cd/etcshell>ln-s rc.d/init.d。

目前主要Linux分发版应当支持使用/etc/init.d的新目录布局,因为需要LSB(Linux标准基)兼容性。

如果你安装的RPM文件包括MySQL-server,安装后MySQL d服务器应当能启动并运行。

你应当能使用MySQL启动。

注释:MySQL授权表中的账户开始没有密码。

1.2源码安装mysql本节介绍在各种平台上安装tar压缩文件格式的MySQL二进制分发版(文件有.tar.gz扩展名)。

MySQL tar文件二进制分发版的文件名格式为mysql-VERSION-OS.tar.gz,其中VERSION是版本号(例如,5.1.2-alpha),OS表示分发版安装的操作系统类型(例如,pc-linux-i686)。

你需要下面的工具来安装MySQL tar文件二进制分发版:·GNU gunzip解压缩分发版。

·一个适当的tar解包分发版。

GNU tar已知可以。

一些操作系统中含有预安装的tar,已知有问题。

例如,已知Mac OS X tar和Sun tar对于长文件名有问题。

在Mac OS X中,你可以使用预安装的gnutar程序。

在其它系统中若tar不完善,你应当首先安装GNU tar。

·cmake No version limit ·libtool1.5/software/libtool/·GNU make3.79/software/make/·bison1.75/software/bison/·gcc2.95/software/gcc/必须执行以便安装并使用MySQL二进制分发版的基本命令是:Linux系统的Root用户安装:#Preconfiguration setupshell>groupadd mysqlshell>useradd-r-g mysql mysql#Beginning of source-build specific instructionsshell>tar zxvf mysql-5.5.15.tar.gzshell>cd mysql-5.5.15shell>cmake.shell>makeshell>make install#End of source-build specific instructions#Postinstallation setupshell>cd/usr/local/mysqlshell>chown-R mysql.shell>chgrp-R mysql.shell>scripts/mysql_install_db--user=mysqlshell>chown-R root.shell>chown-R mysql data#Next command is optionalshell>cp support-files/f/etc/fshell>bin/mysqld_safe--user=mysql&#启动mysql#Next command is optional,可选命令shell>cp support-files/mysql.server/etc/init.d/mysql.serverLinux系统的普通用户Mysql用户安装:#Beginning of source-build specific instructionsshell>tar zxvf mysql-5.5.15.tar.gzshell>cd mysql-5.5.15shell>cmake-DCMAKE_INSTALL_PREFIX=/dir.shell>makeshell>make install#End of source-build specific instructions#Postinstallation setupshell>cd/dirshell>scripts/mysql_install_db--user=mysql#Next command is optionalshell>cp support-files/f/dir/etc/fshell>bin/mysqld_safe--user=mysql&#启动mysql下面为安装二进制分发版的更详细的描述:1.为mysqld增加一个登录用户和组:2.shell>groupadd mysql3.shell>useradd-g mysql mysql4.Shell>tar zxvf mysq-l5.5.15.tar.gz5.进入安装目录:shell>cd mysql-5.5.156.编译安装mysql:shell>cmake.shell>makeshell>make installMysql编译参数指定示例:cmake-DCMAKE_INSTALL_PREFIX=/home/kmsdb1/iddbs/mysql\-DMYSQL_UNIX_ADDR=/tmp/mysql.sock\-DDEFAULT_CHARSET=utf8\-DDEFAULT_COLLATION=utf8_general_ci\-DWITH_EXTRA_CHARSETS:STRING=utf8,gbk\-DWITH_MYISAM_STORAGE_ENGINE=1\-DWITH_INNOBASE_STORAGE_ENGINE=1\-DWITH_MEMORY_STORAGE_ENGINE=1\-DWITH_READLINE=1\-DENABLED_LOCAL_INFILE=1\-DMYSQL_DATADIR=/home/kmsdb1/iddbs/mysql1/data\-DMYSQL_USER=kmsdb17.初始化mysql:shell>scripts/mysql_install_db--user=mysql初始化示例:/home/kmsdb1/iddbs/mysql1/scripts/mysql_install_db--user=kmsdb1 --defaults-file=/home/kmsdb1/iddbs/mysql1/etc/f--basedir=/home/kmsdb1/iddbs/mysql1 --datadir=/home/kmsdb1/iddbs/mysql1/data--user=kmsdb18.将程序二进制的所有权改为root,数据目录的所有权改为运行mysqld的用户。

相关主题