封云亭 发表于 2018-10-9 10:30:13

centos下编译安装MySQL5.6-yes5144

  环境win7下VMware12Pro,虚拟机centos6.5mini
  网络适配器“桥接模式”
  继续上一次的Apache编译后,编译安装MySQL5.6
  MySQL5.6和以前的版本不同之处在于用cmake就行编译,先安装cmake
  #yum install cmake -y
  1、开始下载编译MySQL5.6,推荐镜像网站http://mirrors.sohu.com
  #wget http://mirrors.sohu.com/mysql/MySQL-5.6/mysql-5.6.35.tar.gz
  #tar xf mysql-5.6.35.tar.gz
  #cd mysql-5.6.35.tar.gz
  yum install ncurses-devel -y   //编译时会提示依赖ncurses-devel,删除解压文件夹,重新解压,重新编译
  cmake\
  -DCMAKE_INSTALL_PREFIX=/usr/local/mysql    \
  -DMYSQL_DATADIR=/usr/local/mysql/data    \
  -DSYSCONFDIR=/etc
  -DMYSQL_UNIX_ADDR=/tmp/mysql.sock \
  多次在centos6.5mini环境编译尝试,多次出错,所以把mysql.sock,文件编译到默认目录/tmp/mysql.sock
  cmake命令执行结束后,执行命令echo $?如果返回0,则执行make && make install
  这个编译时间较长,我的在27分钟,如果你的配置足够好,时间更少
  2、对MySQL进行简单的配置
  首先建立mysql用户和组,注意mysql用户不允许登录系统,也没有必要创建家目录!
  groupadd mysql
  useradd -M -s /sbin/nologin -g mysql mysql
  设置MySQL安装目录的属主和属组
  chown -R mysql:mysql /usr/local/mysql
  给数据库data目录可读写的权限
  chmod 777 -R /usr/local/mysql/data
  复制配置文件和服务控制脚本到相应位置
  cp /usr/local/mysql/support-files/my-default.cnf /etc/my.cnf
  cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld
  编辑配置文件/etc/my.cnf,添加:
  basedir = /usr/local/mysql
  datadir = /usr/local/mysql/data
  其他参数默认就好。
  下面就行初始化数据库
  cd /usr/local/mysql
  scripts/mysql_install_db --user=mysql
  再执行echo $? 返回的状态码是0,则数据库初始化成功
  就可以启动mysql数据库服务了,启动命令是mysqld
  service mysqld start
  出现大写的“SUCCESS”就代表启动成功了,
  mysql服务器默认密码为空,
  执行/usr/local/mysql/bin/mysql 就可以登录数据库了(默认root用户,是mysql的root,不是系统root)
  进入MySQL提示符为“mysql>”
  show databases; ##命令输入正确后,记得“;”
  use mysql;
  select host, user, password from mysql.user;
  退出mysql:“\q”或“exit”
  还记得Apache吗?对,要把MySQL的bin添加到系统环境变量中
  echo 'export PATH=$PATH:/usr/local/mysql/bin' > /etc/profile.d/mysql.sh
  chmod +x /etc/profile.d/mysql.sh
  source /etc/profile.d/mysql.sh
  退出linux系统,再登录让系统重新读取配置文件,然后就可以直接执行mysql,不用写冗长的路径了!
  输入mysql打开mysql 客户端
  >show database;
  >use mysql;##你所有的MySQL用户和密码等信息都保存在此数据库的user表
  >select user, host, password from mysql.user;##mysql用户名认证是基于user和host
  >update user set password=password('你的密码') where user='root' and host='127.0.0.1';
  >flush privileges;##更新内存数据
  >set password for 'root'@'localhost'=password('你的密码');
  >flush privileges;
  几个MySQL常用的语句:
  >create database testdb;
  >use testdb;

  >create table mytest (>  >desc mytest;
  >insert into mytest (name, age,college,habit) value ('channel', 32,'信阳农院','English,boxing');
  >select * from mytest;
  >update mytest set age=26 where name='channel';
  >select * from mytest;

  >grant all privileges on testdb.* to test@''>  >flush privileges;
  不足之处,批评指正

页: [1]
查看完整版本: centos下编译安装MySQL5.6-yes5144