Linux平台使用二进制包将MySQL 5.1安装到个人目录简易指南

Linux平台使用二进制包将MySQL 5.1安装到个人目录简易指南

1. 解压二进制包到个人目录,例如/home/liyh/local/mysql;

2. 拷贝一份系统目录的my.cnf配置(或者后面的配置样例也可以),按照如下方式修改:
2.1 将其中所有目录相关的配置全部改为个人目录,且要用绝对路径,不能用$HOME.  例如data, log(注意二进制包解压后缺省并没有log、tmp目录,需要自己手工创建),为了提高性能,建议数据目录和日志目录分开到不同的盘不同的目录,例如:
      datadir = /home1/liyh/mysql/data/
      log-error = /home/liyh/local/mysql/log/mysqld.err
      log-bin=/home/liyh/local/mysql/log/mysql-bin
      innodb_data_home_dir = /home1/liyh/mysql/data

2.2 修改[mysqld]下的port为你自己的端口;
2.3 修改[mysqld]下的user为你的用户名;

3. 将mysql的目录权限修改为你的用户,例如:
    chgrp -R liyh mysql;
    chown -R liyh mysql;
    chmod 775 mysql;

4.  到mysql目录下的scripts目录,执行如下语句:
   ./mysql_install_db –defaults-file=/home/liyh/local/mysql/my.cnf –user=liyh –basedir=/home/liyh/local/mysql
5. 执行如下语句启动:
   /home/liyh/local/mysql/bin/mysqld_safe –defaults-file=/home/liyh/local/mysql/my.cnf –basedir=/home/liyh/local/mysql &

【特别注意】为了提高InnoDB引擎的性能,记得一定要按照如下方式修改两个参数,否则你的MySQL insert和update慢得如蜗牛,但高性能同时也是有损失的,这样配置会降低MySQL的可靠性,某些场景下可能丢失数据,实际应用需要你自己评估是否要这样配置:
sync_binlog=0    1代表每次执行一条insert/update/delete都同步一下磁盘,0代表由操作系统决定何时同步磁盘,大于0代表达到多少条后再同步磁盘,如果可靠性要求较低,建议设置为0或者100以上
innodb_flush_log_at_trx_commit = 2   默认为1,意思是每次事务提交时都同步日志到磁盘,0代表每秒同步一次,事务提交时不同步,2代表只将事务日志写入缓存,每秒由系统同步磁盘;

==================配置样例如下====================================
[client]
port            = 19816
socket          = /home/liyh/local/mysql/tmp/mysql.sock
default-character-set = utf8

[mysqld]
character-set-server = utf8
port            = 19816
socket          = /home/liyh/local/mysql/tmp/mysql.sock
user    = liyh
skip-external-locking
datadir = /home1/liyh/mysql/data/
log-error = /home/liyh/local/mysql/log/mysqld.err
pid-file = /home/liyh/local/mysql/tmp/mysql.pid
#autocommit = off
#read-only

key_buffer_size = 64M
myisam_sort_buffer_size = 300M
max_allowed_packet = 16M
table_open_cache = 4096
sort_buffer_size = 5M
join_buffer_size = 5M
read_buffer_size = 5M
read_rnd_buffer_size = 8M
bulk_insert_buffer_size = 64M
query_cache_size = 8M
query_cache_limit=8M
query_cache_min_res_unit = 2k
tmp_table_size=64M
max_heap_table_size = 128M

open_files_limit=102400
thread_concurrency = 16
max_connections=3000
max_connect_errors=3000
back_log = 600
table_cache = 4096
thread_cache_size = 100
thread_stack = 192K
#transaction_isolation = READ-COMMITTED

skip-name-resolve

####log variables
server-id       = 1
binlog_format=mixed
#log-slave-updates
log-bin=/home/liyh/local/mysql/log/mysql-bin
relay_log=/home/liyh/local/mysql/log/relay-bin
max_binlog_size = 500M
binlog_cache_size = 1M
max_binlog_cache_size = 64M
#binlog-ignore-db = mysql
replicate-ignore-db = mysql
expire-logs-days = 10
sync_binlog=0

slow_query_log=1
slow_query_log_file=/home/liyh/local/mysql/log/slowquery.log
long_query_time=1
general_log=off
general_log_file=/home/liyh/local/mysql/log/general.log
#relay_log_purge=OFF

# Point the following paths to different dedicated disks
#tmpdir         = /tmp/
#log-update     = /path-to-dedicated-directory/hostname

#auto_increment_increment=1
#auto_increment_offset=1

####innodb variables
#skip-innodb
innodb_data_home_dir = /home1/liyh/mysql/data
innodb_data_file_path = ibdata1:2000M;ibdata2:100M:autoextend
innodb_log_group_home_dir = /home1/liyh/mysql/data
#innodb_log_arch_dir = /home/liyh/local/mysql/data/
innodb_buffer_pool_size = 2048M
innodb_additional_mem_pool_size = 64M
innodb_log_file_size = 200M
innodb_log_buffer_size = 8M
innodb_log_files_in_group = 3
innodb_flush_log_at_trx_commit = 2
#innodb_file_io_threads = 4
innodb_thread_concurrency = 16
default-storage-engine=innodb
#innodb_max_dirty_pages_pct = 90
#innodb_lock_wait_timeout = 60
#innodb_file_per_table = 0

#interactive_timeout = 600
#wait_timeout = 900

[mysqldump]
quick
max_allowed_packet = 16M

[mysql]
no-auto-rehash
# Remove the next comment character if you are not familiar with SQL
#safe-updates

[myisamchk]
key_buffer_size = 512M
sort_buffer_size = 512M
read_buffer = 5M
write_buffer = 5M

[mysqlhotcopy]
interactive-timeout

linux

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至253000106@qq.com举报,一经查实,本站将立刻删除。

发布者:PHP中文网,转转请注明出处:https://www.chuangxiangniao.com/p/1940782.html

(0)
上一篇 2025年2月23日 00:26:11
下一篇 2025年2月23日 00:26:27

AD推荐 黄金广告位招租... 更多推荐

相关推荐

  • MySQL同时执行多条SQL语句解决办法

    做一个数据库初始化工具的时候发现了这个问题,就是在一个Statement中执行一条SQL语句的时候可以正确执行,如果同时执行多条,就 做一个数据库初始化工具的时候发现了这个问题,就是在一个Statement中执行一条SQL语句的时候可以正确…

    数据库 2025年2月23日
    100
  • 单机环境下安装多个MySQL服务器

    终于完成了单机上多个mysqld配置,我使用的是mysqld_safe命令来完成的。 Step1: 安装数据库: ./configure –prefix=/usr/local/m 终于完成了单机上多个mysqld配置,我使用的是…

    数据库 2025年2月23日
    200
  • MySQL的UDF

    在MYSQL中,通过CREATE FUNCTION命令可以调用不同的.so共享库文件.在编译前需要加上选项:–with-mysqld-ldflags=-rdynamic重新编 在MYSQL中,通过CREATE FUNCTION命…

    数据库 2025年2月23日
    100
  • MySQL命令解析主要函数调用

    进入一个客户端请求线程的函数调用:handle_connections_sockets create_new_thread start_c 进入一个客户端请求线程的函数调用:handle_connections_sockets       …

    数据库 2025年2月23日
    100
  • gdb 调试MySQL

    在编译安装完MySQL后,就可以使用gdb来跟踪mysql服务器的执行了。 在编译安装完MySQL后,,就可以使用gdb来跟踪mysql服务器的执行了。 gdb –args /usr/local/mysql/libexec/my…

    数据库 2025年2月23日
    100
  • 如何编写MySQL全文索引插件

    1.简介 全文索引插件用于对MYISAM的全文检索特性进行扩展。通过全文检索,我们可以对文档、图片或者视频等丰富的数据类型进行分词 1.简介 全文索引插件用于对MYISAM的全文检索特性进行扩展。通过全文检索,我们可以对文档、图片或者视频等…

    数据库 2025年2月23日
    100
  • MySQL几个和innodb相关的参数

    有同事问了几个MySQL参数设置,这里简单记录一下: innodb_thread_concurrency ,用于限制能够进入innodb层的线程数 当进入innod 有同事问了几个MySQL参数设置,这里简单记录一下: innodb_thr…

    数据库 2025年2月23日
    100
  • 改进MySQL的table_cache

    改进MySQL的table_cache,在mysql里面有一个参数table_cache,当设置过大时,会产生明显的效率下降。这是因为扫描open_cache哈希 在mysql里面有一个参数table_cache,当设置过大时,会产生明显的…

    数据库 2025年2月23日
    100
  • Linux下配置MySQL远程访问

    MySQL默认是不可以通过远程机器访问的,通过下面的配置可以开启远程访问. 我的MySQL环境是Ubuntu 10.04+MySQL 5.1 1.修改/etc/m MySQL默认是不可以通过远程机器访问的,通过下面的配置可以开启远程访问. …

    数据库 2025年2月23日
    100
  • Linux平台使用源码安装MySQL 5.1到个人目录简易指南

    Linux平台使用源码安装MySQL 5.1到个人目录简易指南 1. 解压源码到个人目录; 2. 执行如下命令进行configure,注意源码默认情况下不支持innodb,必须使用–with-plugins手工指定(二进制包默认…

    数据库 2025年2月23日
    200

发表回复

登录后才能评论