数据库(MySQL)二进制安装+编译安装 + MariaDB编译安装
配置文件: my.cnf [mysql] :只用于mysql这个客户端 [mysqld] [client]:共享与所有客户端,如mysqldump等 MySQL二进制包安装:(在 mysql/下有个 INSTALL-BINARY 是安装教程) 1、下载通用二进制安装包 mysql-5.5.33-linux2.6-x86.64.tar.gz(区分rpm包和二进制包) 2、tar xf mysql--- -C /usr/local/ 3、创建一个连接 ln sv mysql-5.5.33 mysql 创建用户,组 groupadd -r mysql useradd -g mysql -r -s /sbin/nologin mysql 4、cd /usr/local/mysql chown -R root.mysql ./* 5、分离数据存放位置:逻辑卷 +raid {1,10} 默认数据目录在安装目录下的data/下 创建分区: fdisk dev/sdb1 创建逻辑卷 pvcreate /dev/sdb1 vgcreate mydata /dev/sdb1 lvcreate -L 6G -n mysqldata mydata mke2fs -t ext4 /dev/mydata/mysqldata vim /etc/fstab: /dev/mydata/mysqldata /data/ mkdir /data/ mount -a mkdir /data/mydata/ --用来存放数据,且修改属主属组 chown -R mysql.mysql /data/mydata 6、初始化 mysql/scripts/mysql_install_db --help ------> 系统库,管理各种表,属性,用户权限等 mysql/scripts/mysql_install_db --datadir=/data/mydata --user=mysql choown -R root mysql/* 7、服务脚本 cp support_files/mysql-server ---> /etc/rc.d/init.d/mysqld chkconfig --add mysqld chkconfig --list mysqld 8、提供配置文件: support_files/....cnf cp my-large.cnf /etc/my.cnf vim my.cnf datadir=/data/mydata thread_concurrebcy = 4(管理的线程数) 9、启动服务器端 10、客户端 bin/mysql 添加 环境变量 vim /etc/profile.d/mysql.sh export PATH=/usr/local/mysql/bin:$PATH 如果不想让一些用户执行,可以加一些判断 . /etc/profile.d/mysql.sh source 一下 11、导出库,头文件: ln -sv /usr/local/mysql/include/ /usr/include/mysql ls mysl/lib: vim /etc/ld.so.conf.d/mysql.conf /usr/local/mysql 执行:ldconfig:将库导入一下 12、ls mysql/man vim /etc/man.config MANPATH /usr/local/mysql/man 编译安装MySQL-5.5 cmake的重要特性之一是其独立于源码(out-of-source)的编译功能,即编译工作可以在另一个指定的目录中而非源码目录中进行,这可以保证源码目录不受任何一次编译的影响,因此在同一个源码树上可以进行多次不同的编译,如针对于不同平台编译。 编译安装MySQL-5.5 一、安装cmake 跨平台编译器 # tar xf cmake-2.8.8.tar.gz # cd cmake-2.8.8 # ./bootstrap # make # make install 二、编译安装mysql-5.5.33 1、使用cmake编译mysql-5.5 cmake指定编译选项的方式不同于make,其实现方式对比如下: ./configure cmake . ./configure --help cmake . -LH or ccmake . 指定安装文件的安装路径时常用的选项: -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_DATADIR=/data/mysql -DSYSCONFDIR=/etc 默认编译的存储引擎包括:csv、myisam、myisammrg和heap。若要安装其它存储引擎,可以使用类似如下编译选项: -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_ARCHIVE_STORAGE_ENGINE=1 -DWITH_BLACKHOLE_STORAGE_ENGINE=1 -DWITH_FEDERATED_STORAGE_ENGINE=1 若要明确指定不编译某存储引擎,可以使用类似如下的选项: -DWITHOUT_<ENGINE>_STORAGE_ENGINE=1 比如: -DWITHOUT_EXAMPLE_STORAGE_ENGINE=1 -DWITHOUT_FEDERATED_STORAGE_ENGINE=1 -DWITHOUT_PARTITION_STORAGE_ENGINE=1 如若要编译进其它功能,如SSL等,则可使用类似如下选项来实现编译时使用某库或不使用某库: -DWITH_READLINE=1 -DWITH_SSL=system -DWITH_ZLIB=system -DWITH_LIBWRAP=0 其它常用的选项: -DMYSQL_TCP_PORT=3306 -DMYSQL_UNIX_ADDR=/tmp/mysql.sock -DENABLED_LOCAL_INFILE=1 -DEXTRA_CHARSETS=all -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DWITH_DEBUG=0 -DENABLE_PROFILING=1 如果想清理此前的编译所生成的文件,则需要使用如下命令: make clean rm CMakeCache.txt 2、编译安装 # groupadd -r mysql # useradd -g mysql -r -d /mydata/data mysql # tar xf mysql-5.5.33.tar.gz # cd mysql-5.5.33 # cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql \ -DMYSQL_DATADIR=/mydata/data \ -DSYSCONFDIR=/etc \ -DWITH_INNOBASE_STORAGE_ENGINE=1 \ -DWITH_ARCHIVE_STORAGE_ENGINE=1 \ -DWITH_BLACKHOLE_STORAGE_ENGINE=1 \ -DWITH_READLINE=1 \ -DWITH_SSL=system \ -DWITH_ZLIB=system \ -DWITH_LIBWRAP=0 \ -DMYSQL_UNIX_ADDR=/tmp/mysql.sock \ -DDEFAULT_CHARSET=utf8 \ -DDEFAULT_COLLATION=utf8_general_ci # make # make install # cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_DATADIR=/mydata/data -DSYSCONFDIR=/etc -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_ARCHIVE_STORAGE_ENGINE=1 -DWITH_BLACKHOLE_STORAGE_ENGINE=1 -DWITH_READLINE=1 -DWITH_SSL=system -DWITH_ZLIB=system -DWITH_LIBWRAP=0 -DMYSQL_UNIX_ADDR=/tmp/mysql.sock -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci 3、创建用户和组 4、创建目录 /mydata/data chown -R :mysql /usr/local/mysql/* 5、初始化 6、提供服务脚本 7、 和上面一样了 默认启动mysqld_safe
为什么要坚持,想一想当初!