mysql5.6源码安装(转)


mysql5.6源码安装

 转自

jabbok博客园

https://www.cnblogs.com/jabbok/p/9418344.html

1 编译安装

1 2 3 4 5 6 groupadd mysql useradd mysql -g mysql -M -s /sbin/nologin #增加一个名为 mysql的用户。 #-g:指定新用户所属的用户组(group) #-M:不建立根目录 #-s:定义其使用的shell,/sbin/nologin代表用户不能登录系统。
1 wget ftp://mirror.switch.ch/mirror/mysql/Downloads/MySQL-5.6/mysql-5.6.39.tar.gz
1 2 3 4 5 yum install gcc gcc-c++ -y yum install -y ncurses-devel yum install -y cmake yum install -y libaio yum install -y bison
1 cmake ./ -DCMAKE_INSTALL_PREFIX=/app/mysql -DMYSQL_DATADIR=/app/mysql/data -DSYSCONFDIR=/app/mysql/etc -DWITH_MYISAM_STORAGE_ENGINE=1 -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_MEMORY_STORAGE_ENGINE=1 -DWITH_READLINE=1 -DMYSQL_UNIX_ADDR=/tmp/mysqld.sock -DMYSQL_TCP_PORT=3306 -DENABLED_LOCAL_INFILE=1 -DWITH_PARTITION_STORAGE_ENGINE=1 -DEXTRA_CHARSETS=all -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci
1 make -j && make install

参数说明

# -DCMAKE_INSTALL_PREFIX=/usr/local/mysql          \    #安装路径

# -DMYSQL_DATADIR=/usr/local/mysql/data            \    #数据文件存放位置

# -DSYSCONFDIR=/etc                                \    #my.cnf路径

# -DWITH_MYISAM_STORAGE_ENGINE=1                   \    #支持MyIASM引擎

# -DWITH_INNOBASE_STORAGE_ENGINE=1                 \    #支持InnoDB引擎

# -DWITH_MEMORY_STORAGE_ENGINE=1                   \    #支持Memory引擎

# -DWITH_READLINE=1                                \    #快捷键功能(我没用过)

# -DMYSQL_UNIX_ADDR=/tmp/mysqld.sock               \    #连接数据库socket路径

# -DMYSQL_TCP_PORT=3306                            \    #端口

# -DENABLED_LOCAL_INFILE=1                         \    #允许从本地导入数据

# -DWITH_PARTITION_STORAGE_ENGINE=1                \    #安装支持数据库分区

# -DEXTRA_CHARSETS=all                             \    #安装所有的字符集

# -DDEFAULT_CHARSET=utf8                           \    #默认字符

# -DDEFAULT_COLLATION=utf8_general_ci

2 配置

1 2 ./scripts/mysql_install_db --datadir=/app/mysql/data #在安装目录下,把配置库安装到mysql
1 2 3 [root@webmaster data]# ls /app/mysql/data ibdata1  ib_logfile0  ib_logfile1  mysql  performance_schema  test #在数据目录下可以发现数据文件
1 2 chown -R mysql:mysql ./* #将整个安装目录给mysql用户
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 [root@mysql mysql]# cat my.cnf #[mysql] #socket = /tmp/mysqld.socket   [mysqld] basedir = /app/mysql datadir = /app/mysql/data port = 3306 # server_id = ..... socket = /app/mysql/lib/mysqld.socket # join_buffer_size = 128M # sort_buffer_size = 2M # read_rnd_buffer_size = 2M sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES   [mysqld_safe] log-error=/app/mysql/log/mysqld.log pid-file=/app/mysql/lib/mysqld.pid

3 启动

1 bin/mysqld_safe --user=mysql &
1 2 3 4 [root@mysql mysql]# ps aux| grep mysqld | grep -v grep root      12260  0.0  0.1 113260  1628 pts/0    S    19:31   0:00 /bin/sh ./bin/mysqld_safe --user=mysql mysql     12484  0.1 44.8 1364192 448760 pts/0  Sl   19:31   0:00 /app/mysql/bin/mysqld --basedir=/app/mysql --datadir=/app/mysql/data --plugin-dir=/app/mysql/lib/plugin --user=mysql --log-error=/app/mysql/log/mysqld.log --pid-file=/app/mysql/lib/mysqld.pid --socket=/app/mysql/lib/mysqld.socket --port=3306 root      12623  0.0  0.2 131300  2736 pts/0    S+   19:33   0:00 ./bin/mysql -uroot -S /app/mysql/lib/mysqld.socket -p

 

1 2 ./bin/mysqladmin -uroot password -S /app/mysql/lib/mysqld.socket #修改密码
1 2 ./bin/mysql -uroot -S /app/mysql/lib/mysqld.socket -p #进入mysql