源码安装mysql
1.源码包比二进制包小,因为没有生成
2.源码包解压后文件较多
3.systemctl 有时候启动不成功也不会报错
4.生成之后打包该目录,即为二进制包
5./etc/init.d/mysqld start 如果有报错的话,会输出
6.什么启动方式,就用什么关闭方式
1.rz
2.安装依赖
[root@db02 ~]
3.解压mysql安装包
[root@db02 ~]
4.生成
[root@db02 ~]
[root@db02 mysql-5.6.46]
cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql-5.6.46 \
-DMYSQL_DATADIR=/usr/local/mysql-5.6.46/data \
-DMYSQL_UNIX_ADDR=/usr/local/mysql-5.6.46/tmp/mysql.sock \
-DDEFAULT_CHARSET=utf8 \
-DDEFAULT_COLLATION=utf8_general_ci \
-DWITH_EXTRA_CHARSETS=all \
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
-DWITH_FEDERATED_STORAGE_ENGINE=1 \
-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \
-DWITHOUT_EXAMPLE_STORAGE_ENGINE=1 \
-DWITH_ZLIB=bundled \
-DWITH_SSL=system \
-DENABLED_LOCAL_INFILE=1 \
-DWITH_EMBEDDED_SERVER=1 \
-DENABLE_DOWNLOADS=1 \
-DWITH_DEBUG=0
模板
[root@db02 mysql-5.6.46]
-DMYSQL_DATADIR=/usr/local/mysql-5.6.46/data \
-DMYSQL_UNIX_ADDR=/usr/local/mysql-5.6.46/tmp/mysql.sock \
-DDEFAULT_CHARSET=utf8 \
-DDEFAULT_COLLATION=utf8_general_ci \
-DWITH_EXTRA_CHARSETS=all \
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
-DWITH_FEDERATED_STORAGE_ENGINE=1 \
-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \
-DWITHOUT_EXAMPLE_STORAGE_ENGINE=1 \
-DWITH_ZLIB=bundled \
-DWITH_SSL=system \
-DENABLED_LOCAL_INFILE=1 \
-DWITH_EMBEDDED_SERVER=1 \
-DENABLE_DOWNLOADS=1 \
-DWITH_DEBUG=0
[root@db02 mysql-5.6.46]
[root@db02 mysql-5.6.46]
[root@db02 mysql-5.6.46]
[root@db02 mysql-5.6.46]
[root@db02 mysql-5.6.46]
[root@db02 mysql-5.6.46]
[root@db02 mysql-5.6.46]
[root@db02 mysql-5.6.46]
[root@db02 mysql-5.6.46]
[root@db02 mysql-5.6.46]
[root@db02 mysql-5.6.46]
[Unit]
Description=MySQL Server
Documentation=man:mysqld(8)
Documentation=https://dev.mysql.com/doc/refman/en/using-systemd.html
After=network.target
After=syslog.target
[Install]
WantedBy=multi-user.target
[Service]
User=mysql
Group=mysql
ExecStart=/usr/local/mysql/bin/mysqld --defaults-file=/etc/my.cnf
LimitNOFILE = 5000
[root@db02 mysql-5.6.46]
[root@db02 mysql-5.6.46]
[root@db02 mysql-5.6.46]
[root@db02 mysql-5.6.46]
[root@db02 mysql-5.6.46]
[root@db02 ~]
[root@db02 ~]
[root@db02 ~]
[root@db02 ~]
[root@db02 ~]
mysql> show databases;
mysql> drop database test;
mysql> use mysql
mysql> show tables;
mysql> select database();
mysql> select user,host from user;
mysql> select user,host,password from user;
mysql> select user,host from user;
mysql> drop user ''@'db02';
mysql> drop user root@db02;
mysql> drop user root@'::1';
mysql> drop user root@'127.0.0.1';
[root@db02 scripts]
[root@db02 scripts]
[root@db02 scripts]
数据库启动失败报错
[root@db02 scripts]
Starting MySQL.Logging to '/usr/local/mysql-5.6.46/data/db02.err'.
200709 15:42:14 mysqld_safe Directory '/usr/local/mysql-5.6.46/tmp' for UNIX socket file don't exists.
ERROR! The server quit without updating PID file (/usr/local/mysql-5.6.46/data/db02.pid).
#原因:
1.cmake过程指定了socket文件位置,实际位置不存在
2.目录权限不足
#解决:
[root@db02 scripts]# mkdir /usr/local/mysql-5.6.46/tmp/
[root@db02 scripts]# chown -R mysql.mysql /usr/local/mysql
[root@db02 scripts]# chown -R mysql.mysql /usr/local/mysql-5.6.46/
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步