前期准备工作:
如果事先安装了MYSQL 先将其卸载 , 如果使用yum安装的可以使用 yum remove卸载。
安装依赖 yum list|grep ncurses-devel yum -y install make gcc-c++ cmake bison-devel ncurses-devel
下载MYSQL安装包 wget https://cdn.mysql.com//Downloads/MySQL-5.6/mysql-5.6.35.tar.gz
解压安装包 tar zxvf mysql-5.6.35.tar.gz
创建MYSQL群和用户 groupadd mysql useradd -g mysql mysql
创建安装目录(包括数据目录等等) sudo mkdir –p /usr/local/mysql #创建Mysql安装目录
sudo mkdir -p /usr/local/mysql/data
sudo mkdir -p /usr/local/mysql/log
sudo chown -R mysql:mysql /usr/local/mysql/data
sudo chown -R mysql:mysql /usr/local/mysql
编译安装时段:
cmake(没有安装cmake,可以使用yum install cmake) 指定mysql安装的环境变量 cd mysql-5.6.23/ cmake \
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
-DSYSCONFDIR=/etc \
-DMYSQL_UNIX_ADDR=/tmp/mysql.sock \
-DDEFAULT_CHARSET=utf8 \
-DDEFAULT_COLLATION=utf8_general_ci \
-DEXTRA_CHARSETS=all -DWITH_MYISAM_STORAGE_ENGINE=1 \
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
-DWITH_MEMORY_STORAGE_ENGINE=1 \
-DWITH_READLINE=1 \
-DENABLED_LOCAL_INFILE=1 \
-DMYSQL_DATADIR=/usr/local/mysql/data \
-DMYSQL_USER=mysql \
-DWITH_DEBUG=0
编译之前清除原先的环境配置 make clean
rm -f CMakeCache.txt
rm -rf /etc/my.cnf
编译安装 make && make install
完成install之后会在/usr/local/mysql目录中找到相应的文件 配置开机启动 sudo chmod +w /usr/local/mysql
sudo cp ./support-files/my-default.cnf /etc/my.cnf
sudo cp ./support-files/mysql.server /etc/init.d/mysqld
sudo chmod 755 /etc/init.d/mysqld
设置全局环境变量(方便日后使用) sudo ln -s /usr/local/mysql/lib/libmysqlclient.so.18 /usr/lib/libmysqlclient.so.18
sudo ln -s /usr/local/mysql/bin/mysql /usr/bin
sudo ln -s /usr/local/mysql/bin/mysqladmin /usr/bin
初始化数据库(很重要) /usr/local/mysql/scripts/mysql_install_db \
--defaults-file=/etc/my.cnf \
--basedir=/usr/local/mysql \
--datadir=/usr/local/mysql/data \
--user=mysql
启动mysql服务器 sudo /etc/init.d/mysqld start (正常会显示 starting)
使用MYSQL时段:
启动成功后创建root用户的密码 (输入密码即可) mysqladmin -u root password
客户端连接mysql服务器 mysql -uroot -p
优雅开启mysql和关闭mysql mysqladmin -u root -p shutdown #关闭数据库 sudo /etc/init.d/mysqld start (正常会显示 starting)
补充说明:
配置说明 CMAKE_INSTALL_PREFIX:指定MySQL程序的安装目录,默认/usr/local/mysql
DEFAULT_CHARSET:指定服务器默认字符集,默认latin1
DEFAULT_COLLATION:指定服务器默认的校对规则,默认latin1_general_ci
ENABLED_LOCAL_INFILE:指定是否允许本地执行LOAD DATA INFILE,默认OFF
WITH_COMMENT:指定编译备注信息
WITH_xxx_STORAGE_ENGINE:指定静态编译到mysql的存储引擎,MyISAM,MERGE,MEMBER以及CSV四种引擎默认即被编译至服务器,不需要特别指定。
WITHOUT_xxx_STORAGE_ENGINE:指定不编译的存储引擎
SYSCONFDIR:初始化参数文件目录
MYSQL_DATADIR:数据文件目录
MYSQL_TCP_PORT:服务端口号,默认3306
MYSQL_UNIX_ADDR:socket文件路径,默认/tmp/mysql.sock
最后鞭策:
这是MYSQL的基本安装记录,这是后续所有工作的基础,此后还会写MYSQL的多实例安装以及MYSQL的主从复制。