在centos下安装mysql

主要编译mysql 源文件的安装方式; 使用CentOS Linux操作系统.

A:   准备安装所需要的辅助工具

     使用root 登陆:  在 terminal 端运行 "->"表示命令提示符

     1:  -> yum install -y gcc gcc-c++ gcc-g77 autoconf automake zlib* fiex* libxml* ncurses-devel libmcrypt* libtool-ltdl-devel*

     2: 安装wget

          ->yum install -y wget

     3: 安装cmake : 只列出了基本的命令,详细的介绍大家可以使用百度或者google搜索. 

       ->wget http://www.cmake.org/files/v2.8/cmake-2.8.10.2.tar.gz

      -> tar -zxvf cmake-2.8.10.2.tar.gz

      -> cd cmake-2.8.10.2

       -> ./bootstrap

     -> gmake

     -> gmake install

     备注:  如果安装cmake报错,可能原因是关联的程序包未安装。解决方法:安装所需的程序包后,将cmake-2.8.10.2/目录下的CMakeCache.txt删掉,再重新运行 ./bootstrap


B:  安装mysql

   # 创建mysql 组和用户

    ->groupadd mysql

   ->useradd -g mysql mysql

    ##download mysql

   ->wget ftp://mirror.switch.ch/mirror/mysql/Downloads/MySQL-5.5/mysql-5.5.22.tar.gz

   ->tar zxvf mysql-5.5.22.tar.gz

   -> cd mysql-5.5.22

   ## 设置安装mysql参数 假设我们把mysql 安装 /project/mysql目录下, 运行cmake 编译安装mysql

   -> cmake .                                                  \
      -DSYSCONFDIR:PATH=/project/mysql                 \
     -DCMAKE_INSTALL_PREFIX:PATH=/project/mysql       \
     -DCMAKE_BUILD_TYPE:STRING=Release                      \
     -DENABLE_PROFILING:BOOL=ON                             \
     -DWITH_DEBUG:BOOL=OFF                                  \
     -DWITH_VALGRIND:BOOL=OFF                               \
     -DENABLE_DEBUG_SYNC:BOOL=OFF                           \
     -DWITH_EXTRA_CHARSETS:STRING=all                       \
     -DWITH_SSL:STRING=bundled                              \
     -DWITH_UNIT_TESTS:BOOL=OFF                             \
     -DWITH_ZLIB:STRING=bundled                             \
     -DWITH_PARTITION_STORAGE_ENGINE:BOOL=ON                \
     -DWITH_INNOBASE_STORAGE_ENGINE:BOOL=ON                 \
     -DWITH_ARCHIVE_STORAGE_ENGINE:BOOL=ON                  \
     -DWITH_BLACKHOLE_STORAGE_ENGINE:BOOL=ON                \
     -DWITH_PERFSCHEMA_STORAGE_ENGINE:BOOL=ON               \
     -DDEFAULT_CHARSET=utf8                                 \
     -DDEFAULT_COLLATION=utf8_general_ci                    \
     -DWITH_EXTRA_CHARSETS=all                              \
     -DENABLED_LOCAL_INFILE:BOOL=ON                         \
     -DWITH_EMBEDDED_SERVER=0                               \
     -DINSTALL_LAYOUT:STRING=STANDALONE                     \
     -DCOMMUNITY_BUILD:BOOL=ON                              \
     -DMYSQL_SERVER_SUFFIX='-r5436';

  ->make

  ->make install

   #更改mysql安装目录属主

   chmod +w /project/mysql
   chown -R mysql:mysql  /project/mysql

  # 初始化数据文件

  ->/project/mysql/scripts/mysql_install_db --datadir=/project/mysql/data --user=mysql --basedir=/project/mysql

  #准备database config 文件,并创建相应的log等目录,并启动数据库

 ->/project/mysql/bin/mysqld_safe --defaults-file=//project/mysql/my.cnf &

 # 测试mysql 

 -> ln -s /project/mysql/bin/mysql /usr/bin

 -> mysql -uroot -h127.0.0.1 -P3306  

 C: 将mysql做成服务.

     ->cp /project/mysql/my.cnf  /etc/my.cnf
      ->cp /project/mysql/support-files/mysql.server /etc/rc.d/init.d/mysqld

     ->chmod +x /etc/rc.d/init.d/mysqld

      ##执行下面的命令将mysqld服务加入到系统服务

      ->chkconfig --add mysqld

     #执行下面的命令检查mysqld服务是否已经生效:

     ->chkconfig --list mysqld

     #启动mysqld服务

     ->service mysqld start

    # 停止mysqld服务

     ->service mysqld stop

     #执行下面的命令关闭开机自启动

     ->chkconfig mysqld off

     #执行下面的命令可以改变开机自启动的运行级别为3、5

    ->chkconfig --level 35 mysqld on


D:  将mysql的bin目录加入PATH环境变量

    #编辑/etc/profile文件

    ->vi /etc/profile

    #在文件最后添加如下两行:
              PATH=$PATH:/usr/local/mysql/bin
              export PATH
    # 执行下面的命令使所做的更改生效:
          . /etc/profile

E:  my.cnf 内容参考

  [mysqld_safe]
pid-file=/project/mysql/run/mysqld.pid


[mysql]
port=3306
prompt=\\u@\\d \\r:\\m:\\s>
default-character-set=gbk
no-auto-rehash


[client]
port=3306
socket=/project/mysql/run/mysql.sock


[mysqld]
#dir
basedir=/project/mysql
datadir=/project/mysql/data
tmpdir=/tmp
lc_messages_dir=/project/mysql/share
log-error=/project/mysql/log/alert.log
slow_query_log_file=/project/mysql/log/slow.log
general_log_file=/project/mysql/log/general.log
socket=/project/mysql/run/mysql.sock


#innodb
innodb_data_home_dir=/project/mysql/data
innodb_log_group_home_dir=/project/mysql/data
innodb_data_file_path=ibdata1:2G;ibdata2:16M:autoextend
innodb_buffer_pool_size=2G
innodb_buffer_pool_instances=4
innodb_log_files_in_group=2
innodb_log_file_size=1G
innodb_log_buffer_size=200M
innodb_flush_log_at_trx_commit=1
innodb_additional_mem_pool_size=20M
innodb_max_dirty_pages_pct=60
innodb_io_capacity=1000
innodb_thread_concurrency=16
innodb_read_io_threads=8
innodb_write_io_threads=8
innodb_open_files=60000
innodb_file_format=Barracuda
innodb_file_per_table=1
innodb_flush_method=O_DIRECT
innodb_change_buffering=inserts
innodb_adaptive_flushing=1
innodb_old_blocks_time=1000
innodb_stats_on_metadata=0
innodb_read_ahead=0
innodb_use_native_aio=0
innodb_lock_wait_timeout=5
innodb_rollback_on_timeout=0
innodb_purge_threads=1
innodb_strict_mode=1
transaction-isolation=READ-COMMITTED


#myisam
key_buffer=64M
myisam_sort_buffer_size=64M
concurrent_insert=2
delayed_insert_timeout=300


#replication
master-info-file=/project/mysql/log/master.info
relay-log=/project/mysql/log/relaylog
relay_log_info_file=/project/mysql/log/relay-log.info
relay-log-index=/project/mysql/log/mysqld-relay-bin.index
slave_load_tmpdir=/project/mysql/tmp
slave_type_conversions="ALL_NON_LOSSY"
slave_net_timeout=4
skip-slave-start
sync_master_info=1000
sync_relay_log_info=1000


#binlog
log-bin=/project/mysql/log/mysql-bin
server_id=2552763370
binlog_cache_size=32K
max_binlog_cache_size=2G
max_binlog_size=500M
binlog-format=ROW
sync_binlog=1000
log-slave-updates=1
expire_logs_days=0


#server
default-storage-engine=INNODB
character-set-server=gbk
lower_case_table_names=1
skip-external-locking
open_files_limit=65536
safe-user-create
local-infile=1
#sqlmod="STRICT_ALL_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE"
performance_schema=0


log_slow_admin_statements=1
log_warnings=1
long_query_time=1
slow_query_log=1
general_log=0


query_cache_type=0
query_cache_limit=1M
query_cache_min_res_unit=1K


table_definition_cache=65536
table_cache=65536


thread_stack=512K
thread_cache_size=256
read_rnd_buffer_size=128K
sort_buffer_size=256K
join_buffer_size=128K
read_buffer_size=128K


port=3306
skip-name-resolve
skip-ssl
max_connections=4500
max_user_connections=4000
max_connect_errors=65536
max_allowed_packet=128M
connect_timeout=8
net_read_timeout=30
net_write_timeout=60
back_log=1024

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值