MySQL 从5.5 后改用cmake 来编译,所以需要先安装cmake,还需要安装rpmbuild
1.安装cmake,下载:http://www.cmake.org/cmake/resources/software.html
# tar xvf cmake-2.8.10.2.tar.gz # cd cmake-2.8.10.2 # ./configure # make # make install
2.安装rpmbuild
# yum install rpm-build
3.编译安装mysql
{mysql安装目录} ——替换为你自己的mysql 安装目录
{mysql数据目录} ——替换为你自己的mysql 数据目录
{mysql数据目录}/data ——为你的mysq数据库表文件存放地址
下载:http://cdn.mysql.com/Downloads/MySQL-5.5/MySQL-5.5.30-1.linux2.6.src.rpm
执行如下命令:
# rpm -ivh MySQL-5.5.30-1.linux2.6.src.rpm # cd /usr/src/redhat/SOURCES # tar xvf mysql-5.5.30.tar.gz # cd mysql-5.5.30 # cmake . \ -DCMAKE_INSTALL_PREFIX={mysql安装目录} \ -DMYSQL_DATADIR={默认数据库文件目录} \ -DMYSQL_UNIX_ADDR=/tmp/mysql.sock \ -DMYSQL_TCP_PORT=3306 \ -DDEFAULT_CHARSET=utf8 \ -DDEFAULT_COLLATION=utf8_general_ci \ -DEXTRA_CHARSETS=all \ -DWITH_EMBEDDED_SERVER=0 \ -DWITH_MYISAM_STORAGE_ENGINE=1 \ -DWITH_INNOBASE_STORAGE_ENGINE=1 \ -DWITH_BLACKHOLE_STORAGE_ENGINE=1 \ -DWITH_FEDERATED_STORAGE_ENGINE=1 \ -DWITH_READLINE=1 \ -DENABLED_LOCAL_INFILE=1 \ -DWITH_DEBUG=0 \ -DWITH_SSL=yes # make # make install # groupadd mysql # useradd -g mysql mysql # chmod +w {mysql安装目录} # chown -R mysql:mysql {mysql安装目录}
6. 初始化
# {mysql安装目录}/scripts/mysql_install_db --basedir={mysql安装目录} --datadir={mysql数据目录}/data --user=mysql
7. 配置文件
在{mysql数据目录} 下新建my.cnf 配置文件
# vi my.cnf
[client] character-set-server = utf8 port = 3306 socket = /tmp/mysql.sock [mysqld] character-set-server = utf8 replicate-ignore-db = mysql replicate-ignore-db = test replicate-ignore-db = information_schema user = mysql port = 3306 socket = /tmp/mysql.sock basedir = {mysql安装目录} datadir = {mysql数据目录}/data/ log-error = {mysql数据目录}/mysql_error.log pid-file = {mysql数据目录}/mysql.pid open_files_limit = 10240 back_log = 600 max_connections = 5000 max_connect_errors = 6000 table_cache = 614 external-locking = FALSE max_allowed_packet = 32M sort_buffer_size = 1M join_buffer_size = 1M thread_cache_size = 300 #thread_concurrency = 8 query_cache_size = 512M query_cache_limit = 2M query_cache_min_res_unit = 2k default-storage-engine = MyISAM thread_stack = 192K transaction_isolation = READ-COMMITTED tmp_table_size = 246M max_heap_table_size = 246M long_query_time = 3 log-slave-updates log-bin = {mysql数据目录}/binlog/binlog binlog_cache_size = 4M binlog_format = MIXED max_binlog_cache_size = 8M max_binlog_size = 1G relay-log-index = {mysql数据目录}/relaylog/relaylog relay-log-info-file = {mysql数据目录}/relaylog/relaylog relay-log = {mysql数据目录}/relaylog/relaylog expire_logs_days = 30 key_buffer_size = 256M read_buffer_size = 1M read_rnd_buffer_size = 16M bulk_insert_buffer_size = 64M myisam_sort_buffer_size = 128M myisam_max_sort_file_size = 10G myisam_repair_threads = 1 myisam_recover interactive_timeout = 120 wait_timeout = 120 skip-name-resolve #master-connect-retry = 10 slave-skip-errors = 1032,1062,126,1114,1146,1048,1396 #master-host = 192.168.1.2 #master-user = username #master-password = password #master-port = 3306 server-id = 1 innodb_additional_mem_pool_size = 16M innodb_buffer_pool_size = 512M innodb_data_file_path = ibdata1:256M:autoextend innodb_file_io_threads = 4 innodb_thread_concurrency = 8 innodb_flush_log_at_trx_commit = 2 innodb_log_buffer_size = 16M innodb_log_file_size = 128M innodb_log_files_in_group = 3 innodb_max_dirty_pages_pct = 90 innodb_lock_wait_timeout = 120 innodb_file_per_table = 0 #log-slow-queries = {mysql数据目录}/slow.log #long_query_time = 10 [mysqldump] quick max_allowed_packet = 32M
8. 启动
在{mysql数据目录下} 编写启动脚本mysql
# vi mysql
#!/bin/sh mysql_port=3306 mysql_username="root" mysql_password="" function_start_mysql() { printf "Starting MySQL...\n" /bin/sh {mysql安装目录}/bin/mysqld_safe --defaults-file={mysql数据目录}/my.cnf 2>&1 > /dev/null & } function_stop_mysql() { printf "Stoping MySQL...\n" {mysql安装目录}/bin/mysqladmin -u ${mysql_username} -p${mysql_password} -S /tmp/mysql.sock shutdown } function_restart_mysql() { printf "Restarting MySQL...\n" function_stop_mysql sleep 5 function_start_mysql } function_kill_mysql() { kill -9 $(ps -ef | grep 'bin/mysqld_safe' | grep ${mysql_port} | awk '{printf $2}') kill -9 $(ps -ef | grep 'libexec/mysqld' | grep ${mysql_port} | awk '{printf $2}') } if [ "$1" = "start" ]; then function_start_mysql elif [ "$1" = "stop" ]; then function_stop_mysql elif [ "$1" = "restart" ]; then function_restart_mysql elif [ "$1" = "kill" ]; then function_kill_mysql else printf "Usage: {mysql数据目录}/mysql {start|stop|restart|kill}\n" fi启动脚本 可执行
# chmod +x mysql # mysql start
相关推荐
针对在CentOS7.1编译安装mysql-5.7.7遇到各种各样的困难的人,或许有点作用
CentOS编译安装MYSQL5.6.17---验证成功
centos7编译安装mysql
说明: 操作系统:CentOS 5.9 64 位 ...MySQL 安装目录:/usr/local/mysql MySQL 数据库存放目录:/data/mysql 准备篇: 一、配置好IP、DNS 、网关,确保使用远程连接工具能够连接服务器,服务器yum 命令可 以正常使用
一、安装MySQL 1、安装cmake cd /usr/local/src tar zxvf cmake-2.8.11.2.tar.gz cd cmake-2.8.11.2 ./configure make make install 2、安装MySQL groupadd mysql #添加mysql组 useradd -g mysql mysql -s...
CentOS 6.4下编译安装MySQL 5.7.9
centos6.3中编译安装mysql.5.5.30.pdf
如何在centos系统下编译安装mysql。 编译安装mysql可以自定义安装路径,属性等资料。经常会用到。
自编译完美无措版,Centos 7.x 系统 MYSQL5.6.40+jemalloc
2-CentOS6安装MySQL5.71
linux centos 编译安装Mysql
linux centos 编译安装Mysql.zip
一、编译安装MySQL前的准备工作 安装编译源码所需的工具和库 yum install gcc gcc-c++ ncurses-devel perl 安装cmake,从http://www.cmake.org下载源码并编译安装 wget ...
本文档介绍了在CentOS6.3编译安装mysql源码包的祥细步骤,带各种命令参数的说明,附带可能出现错误的解决方法。
centos7下编译安装mysql5.7.17
Linux CentOS6.5下编译安装MySQL 5.6.16.docx
CENTOS7环境安装MySQL5.6(rpm-二进制-源代码编译三种方式).docx
CentOS 6.2编译安装Nginx1.2.0+MySQL5.5.25+PHP5.3.13
Linux系统:CentOS 6.5版本下编译安装MySQL 5.6.16教程,涉及:linux基础命名,Mysql安装教程以及注意事项。
主要介绍了详解Lamp环境搭建Linux CentOS6.5编译安装mysql5.6,具有一定的参考价值,感兴趣的小伙伴们可以参考一下