mysql应用编译安装:
# wget -c https://downloads.mysql.com/archives/get/file/mysql-5.6.25.tar.gz
# apt-get -y install make gcc g++ cmake perl vim
# apt-get install make gcc g++ libcurl3-openssl-dev libfreetype6-dev libmcrypt-dev
# apt-get install libpcre3 libpcre3-dev zlib1g-dev libssl-dev build-essential
# apt-get install openssl libssl-dev
# groupadd -r mysql
# useradd -g mysql -r -d /mydata/data mysql
# mkdir /mydata/data -pv
# tar xf mysql-5.6.25.tar.gz
# cd mysql-5.6.25
# vim cmd-line-utils/libedit/terminal.c
把terminal_set方法中的 char buf[TC_BUFSIZE]; 这一行注释,再把 area = buf;改为 area = NULL;
protected int
terminal_set(EditLine *el, const char *term)
{
int i;
/*char buf[TC_BUFSIZE];*/
char *area;
...
area = NULL;
# cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
-DMYSQL_DATADIR=/mydata/data \
-DSYSCONFDIR=/etc \
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
-DWITH_ARCHIVE_STORAGE_ENGINE=1 \
-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \
-DWITH_READLINE=1 \
-DWITH_SSL=system \
-DWITH_ZLIB=system \
-DWITH_LIBWRAP=0 \
-DMYSQL_UNIX_ADDR=/tmp/mysql.sock \
-DDEFAULT_CHARSET=utf8 \
-DDEFAULT_COLLATION=utf8_general_ci
# make
# make install
# cd /usr/local/mysql
# sudo chown -R mysql:mysql ./
# sudo chown -R mysql:mysql /mydata/data
# cp support-files/my-default.cnf /etc/my.cnf
# sudo chown mysql:mysql /etc/my.cnf
[client]
port = 3306
socket = /usr/local/mysql/data/mysql.sock
[mysqld]
port = 3306
socket = /usr/local/mysql/data/mysql.sock
basedir = /usr/local/mysql
datadir = /usr/local/mysql/data
# cd /usr/local/mysql
# sudo scripts/mysql_install_db –user=mysql –basedir=/usr/local/mysql –datadir=/usr/local/mysql/data/
# 方法1:
# 直接启动
# bin/mysqld_safe &
# 检查MySQL服务是否启动:
# ps -ef |grep mysql
# 方法2:
# 通过服务启动
# 添加服务,复制启动脚本到/etc/init.d目录:
# cd /usr/local/mysql/
# cp support-files/mysql.server /etc/init.d/mysql
# 设置文本的权限:
# sudo chmod 755 /etc/init.d/mysql
# 启动:
# sudo /etc/init.d/mysql start
# (关闭mysql服务:sudo /etc/init.d/mysql stop)
# 或者
# sudo service mysql start
# (关闭mysql服务:sudo service mysql stop)
# 检查MySQL服务是否启动:
# ps -ef |grep mysql
PATH=$PATH:/usr/local/mysql/bin
export PATH
# mysql -h127.0.0.1 -uroot -p
# update mysql.user set password=password('root') where user='root';
# flush privileges;
# service mysql restart
# mysql> select now(),user(),version();
+
| now() | user() | version() |
+
| 2018-08-27 19:00:59 | evescn@localhost | 5.6.25 |
+
# CREATE DATABASE IF NOT EXISTS evescn DEFAULT CHARSET utf8 COLLATE utf8_general_ci;
# CREATE TABLE IF NOT EXISTS `runoob_tbl`(
`runoob_id` INT UNSIGNED AUTO_INCREMENT,
`runoob_title` VARCHAR(100) NOT NULL,
`runoob_author` VARCHAR(40) NOT NULL,
`submission_date` DATE,
PRIMARY KEY ( `runoob_id` )
)ENGINE=InnoDB DEFAULT CHARSET=utf8;
# INSERT INTO runoob_tbl
(runoob_title, runoob_author, submission_date)
VALUES
("学习 MySQL", "菜鸟教程", NOW());
# INSERT INTO runoob_tbl
(runoob_title, runoob_author, submission_date)
VALUES
("学习 PHP", "菜鸟教程", NOW());
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· Vue3状态管理终极指南:Pinia保姆级教程