准备工作

# groupadd mysql 

# useradd mysql -g mysql -M -s /sbin/nologin 

#增加一个名为 mysql的用户。

-g:指定新用户所属的用户组(group)

-M:不建立根目录

-s:定义其使用的shell/sbin/nologin代表用户不能登录系统。


为了在安装过程中尽量少出现报错,最好先 yum安装一些必需的编译工具和库文件(安装的比较多,方便以后编译安装php、nginx等):

# yum install cmake make  autoconf automake curl curl-devel gcc gcc-c++ gtk+-devel zlib-devel openssl openssl-devel pcre-devel  perl kernel-headers  cpp glibc libgomp libstdc++-devel keyutils-libs-devel libsepol-devel libselinux-devel krb5-devel  libXpm* freetype freetype-devel freetype* fontconfig fontconfig-devel libpng* ncurses* libtool* libxml2-devel  bison libaio-devel





解压并安装MySQL

# tar zxvf mysql-5.6.12.tar.gz 

# cd mysql-5.6.12 

# cmake ./

# -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

 



cmake ./  -DCMAKE_INSTALL_PREFIX=/opt/mysql  -DMYSQL_DATADIR=/opt/mysql/data -DSYSCONFDIR=/opt/mysql -DWITH_MYISAM_STORAGE_ENGINE=1 -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_MEMORY_STORAGE_ENGINE=1 -DMYSQL_UNIX_ADDR=/opt/mysql/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



# make 

# make install 

mysql 初始化


./scripts/mysql_install_db.sh --basedir=/opt/mysql --datadir=/opt/mysql/data/ --user=mysql





设置my.cnf文件


[mysqld]

port=3306

socket = /opt/mysql/mysql.sock

pid-file=/opt/mysql/data/mysql.pid

basedir=/opt/mysql

datadir=/opt/mysql/data

skip-name-resolve

explicit_defaults_for_timestamp=true


lower_case_table_names=1

max_connections = 2000

max_connect_errors = 1000

max_heap_table_size = 32M

key_buffer_size = 32M

thread_cache_size = 64


default-storage-engine = innodb

transaction_isolation = REPEATABLE-READ

tmp_table_size = 32M

open_files_limit = 65535


server-id = 5

back_log = 50

log-bin=mysql-bin

binlog_cache_size = 2M

binlog_format=mixed

slow_query_log

long_query_time = 1

expire_logs_days = 15

sync-binlog = 0



[client]

default-character-set=utf8

socket=/opt/mysql/mysql.sock



[mysql]

default-character-set=utf8

socket=/opt/mysql/mysql.sock




[mysqldump]

quick

max_allowed_packet = 256M


启动mysql

# bin/mysqld_safe --user=mysql &        或者直接进入bin文件夹下面

# cd bin

#./mysqld                              \ 这里说明,mysqld_safe或者mysqld都可以启动的

启动mysql,看是否成功 

# ps –ef|grep mysql

 安装mysql5.6以上版本_mysql

 

# netstat -tnl|grep 3306 

安装mysql5.6以上版本_mysql_02

 

上面是一种启动mysql的方法,还有一种简单的方便,如下:

mysql的启动服务添加到系统服务中 

# cp support-files/mysql.server  /etc/init.d/mysql 

现在可以使用下面的命令启动mysql 

# service mysql start 

停止mysql服务 

# service mysql stop 

重启mysql服务 

# service mysql restart 




设置root密码  


./bin/mysqladmin   -u root password "your password"



设置远程root密码


mysql>GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'youpassword' WITH GRANT OPTION;


操作完后切记执行以下命令刷新权限 

FLUSH PRIVILEGES