安裝MySql步驟以下:mysql
- 依賴包檢查安裝
- 配置防火牆
- 配置hosts文件
- 配置sysctl.cnf
- 檢查是否安裝mysql 若是有卸載掉(指的是沒有用的mysql)
- 建立用戶屬組
- 建立相應目錄並修改權限
- 上傳壓縮包並解壓
- 配置環境變量
- Cmake編譯 make && make install
- 初始化數據庫
- 開啓服務並登錄,設置開機啓動
1. 依賴包檢查安裝linux
rpm -q cmake make gcc gcc-c++ bison ncurses ncurses-devel openssl openssl-devel boost-develc++
yum -y install cmake make gcc gcc-c++ bison ncurses ncurses-devel openssl openssl-devel sql
注意這裏的boot版本須要1.59的 若是直接yum安裝版本是不對的(1.53)數據庫
2. 配置防火牆vim
service iptables stopbash
chkconfig iptables offapp
vim /etc/selinux/configsocket
修改成SELINUX=disabled工具
3. 配置hosts文件
vim /etc/hosts #看下hosts文件有沒有配置過,沒有的話 增長IP和 主機名,否則編譯時候會報錯提示hostsname識別不了的錯誤
4. 配置sysctl.cnf (由於只是作測試,暫時不設置,須要能夠去百度,我初學也不大董怎麼設置最優)
5. 檢查是否安裝mysql 若是有卸載掉(指的是沒有用的mysql)
[root@lscj ~]# rpm -qa| grep mysql
mysql-libs-5.1.71-1.el6.x86_64
[root@lscj ~]# rpm -e mysql-libs-5.1.71-1.el6.x86_64
6. 建立用戶屬組,配置環境變量
groupadd mysql
useradd -g mysql mysql
passwd mysql
id mysql
su - mysql
vim .bash_profile
MYSQL_HOME=/u01/app/mysql/mysql3306
PATH=$PATH:$MYSQL_HOME/bin
export PATH MYSQL_HOME
source .bash_profile
7. 建立相應目錄並修改權限
mkdir -p /u01/app/mysql/mysql3306
mkdir -p /u01/app/mysql/mysql3306/data
mkdir -p /u01/app/mysql/mysql3306/log/iblog
mkdir -p /u01/app/mysql/mysql3306/log/binlog
mkdir -p /u01/app/mysql/mysql3306/run
mkdir -p /u01/app/mysql/mysql3306/temp
chown -R mysql:mysql /u01/app/mysql
8. 上傳壓縮包並解壓
yum -y install lrzsz ftp工具
mysql安裝包上傳到/tmp/mysql下
tar -zxvf mysql-5.6.40.tar.gz
9. Cmake編譯 make && make install
[mysql@lscj ~]$ cd /tmp/mysql/mysql-5.6.40
cmake \
-DCMAKE_INSTALL_PREFIX=/u01/app/mysql/mysql3306 \
-DINSTALL_DATADIR=/u01/app/mysql/mysql3306/data \
-DDEFAULT_CHARSET=utf8 \
-DDEFAULT_COLLATION=utf8_general_ci \
-DEXTRA_CHARSETS=all \
-DWITH_SSL=yes \
-DWITH_EMBEDDED_SERVER=1 \
-DENABLED_LOCAL_INFILE=1 \
-DWITH_MYISAM_STORAGE_ENGINE=1 \
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
-DWITH_ARCHIVE_STORAGE_ENGINE=1 \
-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \
-DWITH_FEDERATED_STORAGE_ENGINE=1 \
-DWITH_PARTITION_STORAGE_ENGINE=1 \
-DMYSQL_UNIX_ADDR=/u01/app/mysql/mysql3306/run/mysql.sock \
-DMYSQL_TCP_PORT=3306 \
-DENABLED_LOCAL_INFILE=1 \
-DSYSCONFDIR=/etc \
-DWITH_READLINE=on
make && make install
以前的操做是root用戶執行的,下面咱們要進行賦權操做
chmod –R mysql:mysql /u01/app/mysql
11. 初始化數據庫
./scripts/mysql_install_db --defaults-file=/u01/app/mysql/mysql3306/my.cnf --datadir=/u01/app/mysql/mysql3306/data --basedir=/u01/app/mysql/mysql3306 --user=mysql
12. 檢查數據庫初始化是否成功
cd到咱們以前設置的 datadir路徑下,看對應的文件夾是否生成
13.服務
cp $MYSQL_HOME/support-files/mysql.server /etc/init.d/mysql
這樣之後就能夠直接 service mysql status|start|stop 管理服務
最後附上個人參數文件信息
vim my.cnf
[client]
port=3306
socket=/u01/app/mysql/mysql3306/run/mysql.sock
[mysql]
#pid_file=/u01/app/mysql/mysql3306/run/mysqld.pid
[mysqld]
autocommit=0
general_log=off
explicit_defaults_for_timestamp=true
# system
basedir=/u01/app/mysql/mysql3306
datadir=/u01/app/mysql/mysql3306/data
max_allowed_packet=1g
max_connections=3000
max_user_connections=2800
open_files_limit=65535
pid_file=/u01/app/mysql/mysql3306/run/mysqld.pid
port=3306
server_id=101
skip_name_resolve=ON
socket=/u01/app/mysql/mysql3306/run/mysql.sock
tmpdir=/u01/app/mysql/mysql3306/tmp
#binlog
log_bin=/u01/app/mysql/mysql3306/log/binlog
binlog_cache_size=32768
binlog_format=row
expire_logs_days=7
log_slave_updates=ON
max_binlog_cache_size=2147483648
max_binlog_size=524288000
sync_binlog=100
#logging
log_error=/u01/app/mysql/mysql3306/log/error.log
slow_query_log_file=/u01/app/mysql/mysql3306/log/slow.log
log_queries_not_using_indexes=0
slow_query_log=1
log_slave_updates=ON
log_slow_admin_statements=1
long_query_time=1
#relay
relay_log=/u01/app/mysql/mysql3306/log/relaylog
relay_log_index=/u01/app/mysql/mysql3306/log/relay.index
relay_log_info_file=/u01/app/mysql/mysql3306/log/relay-log.info
#slave
slave_load_tmpdir=/u01/app/mysql/mysql3306/tmp
slave_skip_errors=OFF
#innodb
innodb_data_home_dir=/u01/app/mysql/mysql3306/log/iblog
innodb_log_group_home_dir=/u01/app/mysql/mysql3306/log/iblog
innodb_adaptive_flushing=ON
innodb_adaptive_hash_index=ON
innodb_autoinc_lock_mode=1
innodb_buffer_pool_instances=8
#default
innodb_change_buffering=inserts
innodb_checksums=ON
innodb_buffer_pool_size= 128M
innodb_data_file_path=ibdata1:32M;ibdata2:16M:autoextend
innodb_doublewrite=ON
innodb_file_format=Barracuda
innodb_file_per_table=ON
innodb_flush_log_at_trx_commit=1
innodb_flush_method=O_DIRECT
innodb_io_capacity=1000
innodb_lock_wait_timeout=10
innodb_log_buffer_size=67108864
innodb_log_file_size=1048576000
innodb_log_files_in_group=4
innodb_max_dirty_pages_pct=60
innodb_open_files=60000
innodb_purge_threads=1
innodb_read_io_threads=4
innodb_stats_on_metadata=OFF
innodb_support_xa=ON
innodb_use_native_aio=OFF
innodb_write_io_threads=10
[mysqld_safe]datadir=/u01/app/mysql/mysql3306/data