Ubuntu 18.04,源码安装MySQL5.7.x

2020-09-15  本文已影响0人  黑铁大魔王

关键字:

摘要:

本文简述在ubuntu18.04 server版上,通过源码编译安装mysql5.7.30的过程。以及在此过程中可能遇到的一些问题,并给出了解决办法。

获取MySql源码包

点击进入下载页面

下载页面
按照上图选择选项,然后下载箭头4指向的文件

开始安装

  1. 把mysql-5.7.30安装包放到~/download目录下解压
  2. 进入路径 /home/c_01/download/mysql-5.7.30
  3. 执行cmake
cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql \ # mysql安装位置
-DMYSQL_UNIX_ADDR=/tmp/mysql.sock \
-DDEFAULT_CHARSET=utf8 \
-DDEFAULT_COLLATION=utf8_general_ci \
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
-DWITH_ARCHIVE_STORAGE_ENGINE=1 \
-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \
-DWITH_PARTITION_STORAGE_ENGINE=1 \
-DENABLED_LOCAL_INFILE=1 \
-DMYSQL_USER=mysql \
-DMYSQL_TCP_PORT=3306 \
-DMYSQL_DATADIR=/data/mysql \ # mysql数据文件存放位置
-DDOWNLOAD_BOOST=1 \
-DWITH_BOOST=/home/c_01/download/mysql-5.7.30/boost # boost路径,安装时需要用到
  1. 执行cmake时有可能会报的错误:

    • Curses library not found. Please install appropriate package
      解决:sudo apt-get install libncurses5-dev
    • Please install the appropriate openssl developer package.
      解决:sudo apt-get install libssl-dev
    • 缺少pkg-config的错误
      解决:sudo apt install pkg-config
    • /tmp/mysql.sock 不存在
      解决:把上面3个apt都执行了,即可解决
  2. make && sudo make install

  3. 初始化mysql

    • make install成功之后,在/usr/local/下已经有mysql了
    • 进入/usr/local/mysql/bin目录,sudo ./mysqld --initialize --user=mysql --datadir=/data/mysql --basedir=/usr/local/mysql/
    • 001.png

    可能会出现的问题:
    1. 可能出现/data/mysql里有文件的提示,此时删除该目录,再次执行初始化命令即可。
    2. 提示mysql用户不存在,通过useradd mysq增加mysql用户即可

    image.png
  4. 启动mysql

    • 在/usr/local/mysql/support/目录下执行 ./mysql.server start
启动时可能会报错: The server quit without updating PID file (/data/mysql/xxx.pid) 启动时可能会报错pid无法更新
  1. 使用第6步的初始化密码登录root用户

    • 登录:./mysql -uroot -pxxxxxx(xxxxxx是初始化密码)
    • 修改root密码:做如下3部操作即可
      • step 1: SET PASSWORD = PASSWORD('新密码');
      • step 2: ALTER USER 'root'@'localhost' PASSWORD EXPIRE NEVER;
      • step 3: flush privileges;
  2. 增加其他用户

  3. 完成鸟。

上一篇下一篇

猜你喜欢

热点阅读