MySQL源码包安装

mysql> select version() from dual;   #查看当前MySQL版本的命令
MySQL源码包安装:   (本列使用MySQL-5.7.29)
安装依赖包:yum安装    gcc gcc-c++  m4  openssl-devel
yum -y install gcc gcc-c++  m4  openssl-devel   


安装:cmake
tar zxf cmake-3.16.4.tar.gz       
cd cmake-3.16.4
./bootstrap                 
gmake && gmake install      #gmake是指GNU make  #在linux环境下gmake和make是一样的
cmake -version              #查看cmake版本

安装:ncurses
tar zxf ncurses-6.2.tar.gz
cd ncurses-6.2/
./configure && make && make install

安装:bison
tar zxf bison-3.5.2.tar.gz
cd  bison-3.0.4/
./configure && make && make install

安装:boost
tar  zxf  boost_1_59_0.tar.gz 
mv  boost_1_59_0  /usr/local/boost 
groupadd -r mysql && useradd -r -g mysql -s /bin/false -M mysql          ##新建 msyql 组和 msyql 用 户禁止登录 shell 

mkdir /usr/local/mysql                  #---创建目录 
mkdir /usr/local/mysql/data          #---数据库目录 

编译安装MySQL:
tar zxf mysql-5.7.29.tar.gz
cd  mysql-5.7.29
                                  #执行cmake命令进行编译前的配置:
[root@localhost mysql-5.7.29]#
cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql/ \    # [MySQL安装的根目录]
-DMYSQL_DATADIR=/usr/local/mysql/data \             # [MySQL 数据库文件存放目录] 
-DSYSCONFDIR=/erc \                                 # [MySQL 配置文件所在目录] 
-DDEFAULT_CHARSET=utf8 \                            # [设置 MySQL 的默认字符集为 utf8]
-DDEFAULT_COLLATION=utf8_general_ci \               # [设置默认字符集校对规则 ] 
-DEXTRA_CHARSETS=all \                              # [使 MySQL 支持所有的扩展字符] 
-DMYSQL_UNIX_ADDR=/tmp/mysql.sock  \                # [指定 mysql.sock 位置 ] 
-DWITH_MYISAM_STORAGE_ENGINE=1 \                    # [添加 MYISAM 引擎支持 ] 
-DWITH_INNOBASE_STORAGE_ENGINE=1 \                  # [添加 InnoDB 引擎支持 ] 
-DWITH_ARCHIVE_STORAGE_ENGINE=ENGINE=1 \            # [添加 ARCHIVE 引擎支持 ] 
-DWITH_PArTITON_STORAGE_ENGINE=1 \                  # [安装支持数据库分区 ]
-DWITH_SYSTEMD=1 \                                  # [可以使用 systemd 控制 mysql 服务] 
-DWITH_BOOST=/usr/local/boost                       # [指向 boost 库所在目录] 

编译:
[root@localhost mysql-5.7.29]#make &&  make install

修改配置文件:
[mysqld]
basedir = /usr/local/mysql
datadir = /usr/local/mysql/data
pid-file = /usr/local/mysql/data/mysqld.pid
port = 3306
server_id = 1
socket = /tmp/mysql.sock
log-error=/usr/local/mysql/data/mysql.err

给予MySQL权限
chown -R  mysql:mysql  /usr/local/mysql

5.7版本以后使用此方法初始化MySQL:
/usr/local/mysql/bin/mysqld  --initialize-insecure  --user=mysql  --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data

 


将/usr/local/mysql/usr/lib/systemd/system/mysqld.service复制到
/usr/lib/systemd/system/                 #能够直接使用 systemctl 来启动,关闭和重启MYSQL

在/etc/profile  文件中最后添加:
export PATH=$PATH:/usr/local/mysql/bin
然后执行source  /etc/profile


将/usr/lib/systemd/system/mysqld.service 文件中的 42行改为
PDFile=/usr/local/mysql/data/mysqld.pid
                                                                   还有54行改为
ExecStart=/usr/local/mysql/bin/mysqld --daemonize --pid-file=/usr/local/mysql/data/mysqld.pid $MYSQLD_OPTS
 #(和/etc/my.cnf 文件中pid-file的路径一样就行)


登录MySQL:
mysql -uroot -p                           #(输入初始化时的随机密码)
查看临时密码:
grep password /usr/local/mysql/data/mysql.err

如果之前初始化数据库时使用的是–initialize-insecure 命令,那么就不会出现密码。如果以–initialize初始化数据库,就会出现密码。initialize意为“不安全的,不可靠的”,这也就解释了为什么加上他就没有出现密码,及root的密码为空。

设置新的MySQL密码:
在数据库中修改:
ALTER USER  root@localhost identified by '密码';   #(密码表示要修改的新密码)

在命令行页面修改:
mysqladmin -uroot -p password '密码'     #(密码表示要修改的新密码)
Enter password:                                       #输入旧密码

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
mysql-5.6.25.tar 含两个文件: - mysql-5.6.25.tar.gz Generic Linux (Architecture Independent), Compressed TAR Archive MD5: 37664399c91021abe070faa700ecd0ed -install.txt: 安装方法 首先解压mysql-5.6.25.tar: $ tar xf mysql-5.6.25.tar ------------------ Mysql 源码安装操作: 1. 创建用户 # groupadd mysql # useradd -g -r mysql mysql 2. 解压缩tar # tar xf mysql-5.6.25.tar.gz # cd mysql-5.6.25 3. 编译安装 # cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql \ > -DDEFAULT_CHARSET=gbk \ > -DDEFAULT_COLLATION=gbk_chinese_ci \ > -DENABLED_LOCAL_INFILE=ON \ > -DWITH_INNOBASE_STORAGE_ENGINE=1 \ > -DWITH_FEDERATED_STORAGE_ENGINE=1 \ > -DWITH_BLACKHOLE_STORAGE_ENGINE=1 \ > -DMYSQL_UNIX_ADDR=/tmp/mysqld.sock \ > -DWITH_DEBUG=0 \ > -DMYSQL_TCP_PORT=3306 # make # make install 4. 配置以及初始化MySQL # cd /usr/local/mysql 4.1 设置MySQL安装目录的权限 # chown -R mysql:mysql /usr/local/mysql 4.2 初始化MySQL # scripts/mysql_install_db --user=mysql # cp support-files/mysql.server /etc/init.d/mysqld 4.3 重新设置MySQL安装目录的权限(除data目录外,其余所有目录及文件均修改用户为root,组不变) # chown -R root . # chown -R mysql data 4.4 启动mysql_safe # bin/mysqld_safe --user=mysql & 4.5 设置MySQL的root帐号密码 - 自动设置:# ./bin/mysql_secure_installation 或 - 手动置:# ./bin/mysqladmin -u root password '' ------------------ 操作详情参看: https://github.com/Marslo/MyBlog/blob/master/Programming/MySQL/MySQLInstallationBySourceCode.md MySQL6源码安装官方手册: http://dev.mysql.com/doc/refman/5.6/en/installing-source-distribution.html ------------------ 资源为英文,下载请谨慎

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值