本文章来给大家介绍linux中mysql 5.5二进制文件安装方法,有需要了解的朋友根据下面方法即可实现安装mysql5了.
1、创建相关目录用户,代码如下:
- su–root
- groupaddmysql
- useradd-gmysql-pxifenfei-s/bin/bash-mmysql-d/opt/mysql
- MYSQL_BASE=/opt/mysql
- mkdir-p$MYSQL_BASE/product/5.5
- mkdir-p$MYSQL_BASE/mysqldata
- mkdir-p$MYSQL_BASE/mysqllog
- mkdir-p/var/run/mysqld/
- chmod-R777$MYSQL_BASE
- chown-Rmysql:mysql$MYSQL_BASE
- chown-Rmysql:mysql/var/run/mysqld
2、环境变量配置,代码如下:
- exportMYSQL_BASE=/opt/mysql
- exportbasedir=$MYSQL_BASE/product/5.5
- exportdatadir=$MYSQL_BASE/mysqldata
- exportLD_LIBRARY_PATH=$basedir/lib:/lib:/usr/lib:/usr/local/lib
- exportTMPDIR=/tmp
- exportPATH=${PATH}:/usr/bin:/bin:/usr/bin/X11:/usr/local/bin
- exportPATH=$basedir:$basedir/bin:${PATH}:$LD_LIBRARY_PATH
3、调整mysql 用户系统限制(可选)
编辑文件:/etc/security/limits.conf 加入以下语句:
- mysqlsoftnproc2047
- mysqlhardnproc16384
- mysqlsoftnofile1024
- mysqlhardnofile65536
确认如下语句是否存在于/etc/pam.d/login,如果不存在请增加:
session required pam_limits.so
如果用户SHELL 用的是Bourne,Bash,或者Korn shell 修改/etc/profile,并增加如下内容,在SuSe 操作系统上,则需要修改/etc/profile.local,代码如下:
- if[$USER="mysql"];then
- if[$SHELL="/bin/ksh"];then
- ulimit-p16384
- ulimit-n65536
- else
- ulimit-u16384-n65536
- fi
- fi
4、安装数据库
4.1)解压数据库至/opt/mysql/product/5.5中
4.2)安装数据,代码如下:
- [mysql@localhost~]$cdproduct/5.5/scripts/
- [mysql@localhostscripts]$./mysql_install_db–basedir=$basedir–datadir=$datadir–user=mysql
4.3)设置my.cnf参数,代码如下:
- vi/etc/my.cnf
- [mysqladmin]
- socket=/var/run/mysqld/mysqld.sock
- [client]
- port=3306
- socket=/var/run/mysqld/mysqld.sock
- [mysqld]
- port=3306
- socket=/var/run/mysqld/mysqld.sock
- user=mysql
- pid-file=/var/run/mysqld/mysqld.pid
- basedir=/opt/mysql/product/5.5
- datadir=/opt/mysql/mysqldata
- skip-external-locking=1
- interactive_timeout=1200
- wait_timeout=1200
- character-set-server=utf8
- back_log=500
- default_time_zone='+08:00'
- max_connections=1000
- max_connect_errors=1000
- connect_timeout=300
- table_open_cache=100
- max_allowed_packet=16M
- binlog_cache_size=8M
- max_heap_table_size=64M
- sort_buffer_size=8M
- join_buffer_size=8M
- thread_cache_size=32
- thread_concurrency=16
- query_cache_size=0M
- default-storage-engine=INNODB
- thread_stack=192K
- transaction_isolation=READ-COMMITTED
- tmp_table_size=64M
- log-bin=/opt/mysql/mysqllog/mysqlbin
- log-error=/opt/mysql/mysqllog/mysqld.err
- expire_logs_days=7
- binlog_format=ROW
- max_binlog_size=300M
- slow_query_log=1
- slow_query_log_file=/opt/mysql/mysqllog/mysqld-slow
- long_query_time=10
- tmpdir=/tmp
- server-id=1
- key_buffer_size=8M
- read_buffer_size=1M
- read_rnd_buffer_size=1M
- bulk_insert_buffer_size=1M
- myisam_sort_buffer_size=128K
- innodb_additional_mem_pool_size=16M
- innodb_buffer_pool_size=2G
- innodb_data_file_path=ibdata1:1024M:autoextend
- innodb_autoextend_increment=64
- innodb_file_per_table=1
- innodb_data_home_dir=/opt/mysql/mysqldata
- innodb_file_io_threads=4
- innodb_thread_concurrency=16
- innodb_flush_log_at_trx_commit=2
- innodb_log_buffer_size=8M
- innodb_log_file_size=512M
- innodb_log_files_in_group=3
- innodb_max_dirty_pages_pct=40
- innodb_lock_wait_timeout=120
- innodb_locks_unsafe_for_binlog=1
- innodb_autoinc_lock_mode=2
- skip-name-resolve
- lower_case_table_names=1
- [mysqldump]
- quick
- max_allowed_packet=16M
- [mysql]--phpfensi.com
- auto-rehash
- [myisamchk]
- key_buffer_size=512M
- sort_buffer_size=512M
- read_buffer=8M
- write_buffer=8M
- [mysqlhotcopy]
- interactive-timeout
- [mysqld_safe]
- open-files-limit=8192
4.4)异常处理
4.4.1)直接通过mysqld_safe不能正常启动数据库,代码如下:
ln -s /opt/mysql/product/5.5 /usr/local/mysql
或者
ln -s /opt/mysql/product/5.5/bin/mysqld /usr/local/mysql/bin/mysqld
4.4.2)mysql_secure_installation不能正常执行.
1)执行:/opt/mysql/product/5.5/bin/mysql_secure_installation出现以下错误,解决方法(ln -s /var/run/mysqld/mysqld.sock /tmp/mysql.sock)
Enter current password for root (enter for none):
ERROR 2002 (HY000): Can’t connect to local MySQL server through socket ‘/tmp/mysql.sock’ (2)
2)修改mysql_secure_installation 脚本的do_query 函数,推荐处理方法,代码如下:
- do_query(){
- echo“$1″>$command
- #sed‘s,^,>,’<$command#Debugging
- #mysql--defaults-file=$config<$command----此行修改如下:
- mysql--defaults-extra-file=$config<$command
- return$?
- }
5、添加开机启动服务
修改mysql.server文件,代码如下:
- basedir=/opt/mysql/product/5.5
- datadir=/opt/mysql/mysqldata
- [root@localhost~]#cp/opt/mysql/product/5.5/support-files/mysql.server/etc/init.d/mysqld
- [root@localhost~]#chkconfig–addmysqld
- [root@localhost~]#chkconfigmysqldon
- [root@localhost~]#chkconfig–listmysqld
- mysqld0:off1:off2:on3:on4:on5:on6:off