如何在xshell中给linux系统安装myql数据库

如何在xshell中给linux系统安装myql数据库

思路:这里只是一个大概的思路

步骤

  1. 安装mysql:
    1.1安装前环境检查,清除相关的mysql文件和配制文件
    1.1.1 查看当前安装mysql情况,确定有无myql数据库
mysql–version 这个是最好的
find / -name mysql  这个来查找文件
ps -ef |grep mysql  这个来看mysql的运行状态

查找结果如下:
在这里插入图片描述
在这里插入图片描述
这里表示存在myql文件且正在运行。
注意:这里并不安装的myql rpm文件,所以不能使用下面的语句来面的语句检查:rpm -qa|grep -i mysql(这个只针对rpm文件进行检测,有点不靠谱)
有疑问可以看这个 Linux下彻底卸载mysql详解
1.1.2 关闭mysql服务,删除查找到myql文件

关闭服务: service mysqld stop

结果:成功关闭,如果不能成功就有kill -9 pid 进程号 来关闭
在这里插入图片描述

删除文件: rm -rf 文件夹  来删除

在这里插入图片描述
直到将mysql相关的文件全删完,
在这里插入图片描述
最后删除my.cnf 文件就可以了

rm -rf /etc/my.cnf

1.2 安装cmake编译器
1.2.1 安装编译工具及库文件

yum -y install gcc gcc-c++ make autoconf libtool-ltdl-devel gd-devel freetype-devel libxml2-devel libjpeg-devel libpng-devel openssl-devel curl-devel bison patch unzip libmcrypt-devel libmhash-devel ncurses-devel sudo bzip2 flex libaio-devel

1.2.2 安装cmake 编译器
1 下载方式wegt;
安装 wget语句 # yum -y install wget

wget http://www.cmake.org/files/v3.1/cmake-3.1.1.tar.gz

正常启动的状态
在这里插入图片描述
启动失败的图片:

在这里插入图片描述

原因没有安装weget 理由 error的提示中有no-check-certificate , 一般是没有安装,或损坏了。重新安装。

下载cmake语句:

wget http://www.cmake.org/files/v3.1/cmake-3.1.1.tar.gz

2.解压安装包tar zxvf cmake-3.1.1.tar.gz

3.进入安装包目录 cd cmake-3.1.1
4.编译安装

1  ./bootstrap
2   make && make install

1.3 安装mysql
1.下载地址:

wget http://dev.mysql.com/get/Downloads/MySQL-5.6/mysql-5.6.15.tar.gz

2.解压安装包
tar zxvf mysql-5.6.15.tar.gz

3.进入安装包目录 cd mysql-5.6.15
4.编译安装

 cmake -DCMAKE_INSTALL_PREFIX=/usr/local/webserver/mysql/ -DMYSQL_UNIX_ADDR=/tmp/mysql.sock -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DWITH_EXTRA_CHARSETS=all -DWITH_MYISAM_STORAGE_ENGINE=1 -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_MEMORY_STORAGE_ENGINE=1 -DWITH_READLINE=1 -DWITH_INNODB_MEMCACHED=1 -DWITH_DEBUG=OFF -DWITH_ZLIB=bundled -DENABLED_LOCAL_INFILE=1 -DENABLED_PROFILING=ON -DMYSQL_MAINTAINER_MODE=OFF -DMYSQL_DATADIR=/usr/local/webserver/mysql/data -DMYSQL_TCP_PORT=3306
make && make install

5.查看mysql版本

/usr/local/webserver/mysql/bin/mysql --version

1.4mysql配制
1.创建mysql运行使用的用户mysql:

1  /usr/sbin/groupadd mysql
2  /usr/sbin/useradd -g mysql mysql

2.创建binlog和库的存储路径并赋予mysql用户权限

1    mkdir -p /usr/local/webserver/mysql/binlog /www/data_mysql
2   chown mysql.mysql /usr/local/webserver/mysql/binlog/ /www/data_mysql/

3.创建my.cnf配置文件

vim /etc/my.cnf
[client]

port = 3306

socket = /tmp/mysql.sock

[mysqld]

replicate-ignore-db = mysql

replicate-ignore-db = test

replicate-ignore-db = information_schema

user = mysql

port = 3306

socket = /tmp/mysql.sock

basedir = /usr/local/webserver/mysql

datadir = /www/data_mysql

log-error = /usr/local/webserver/mysql/mysql_error.log

pid-file = /usr/local/webserver/mysql/mysql.pid
lower_case_table_names=1

open_files_limit = 65535

back_log = 600

max_connections = 5000

max_connect_errors = 1000

table_open_cache = 1024

external-locking = FALSE

max_allowed_packet = 32M

sort_buffer_size = 1M

join_buffer_size = 1M

thread_cache_size = 600

#thread_concurrency = 8

query_cache_size = 128M

query_cache_limit = 2M

query_cache_min_res_unit = 2k

default-storage-engine = MyISAM

default-tmp-storage-engine=MYISAM

thread_stack = 192K

transaction_isolation = READ-COMMITTED

tmp_table_size = 128M

max_heap_table_size = 128M

log-slave-updates

log-bin = /usr/local/webserver/mysql/binlog/binlog

binlog-do-db=oa_fb

binlog-ignore-db=mysql

binlog_cache_size = 4M

binlog_format = MIXED

max_binlog_cache_size = 8M

max_binlog_size = 1G

relay-log-index = /usr/local/webserver/mysql/relaylog/relaylog

relay-log-info-file = /usr/local/webserver/mysql/relaylog/relaylog

relay-log = /usr/local/webserver/mysql/relaylog/relaylog

expire_logs_days = 10

key_buffer_size = 256M

read_buffer_size = 1M

read_rnd_buffer_size = 16M

bulk_insert_buffer_size = 64M

myisam_sort_buffer_size = 128M

myisam_max_sort_file_size = 10G

myisam_repair_threads = 1

myisam_recover

interactive_timeout = 120

wait_timeout = 120

skip-name-resolve

#master-connect-retry = 10

slave-skip-errors = 1032,1062,126,1114,1146,1048,1396

#master-host = 192.168.1.2

#master-user = username

#master-password = password

#master-port = 3306

server-id = 1

loose-innodb-trx=0 

loose-innodb-locks=0 

loose-innodb-lock-waits=0 

loose-innodb-cmp=0 

loose-innodb-cmp-per-index=0

loose-innodb-cmp-per-index-reset=0

loose-innodb-cmp-reset=0 

loose-innodb-cmpmem=0 

loose-innodb-cmpmem-reset=0 

loose-innodb-buffer-page=0 

loose-innodb-buffer-page-lru=0 

loose-innodb-buffer-pool-stats=0 

loose-innodb-metrics=0 

loose-innodb-ft-default-stopword=0 

loose-innodb-ft-inserted=0 

loose-innodb-ft-deleted=0 

loose-innodb-ft-being-deleted=0 

loose-innodb-ft-config=0 

loose-innodb-ft-index-cache=0 

loose-innodb-ft-index-table=0 

loose-innodb-sys-tables=0 

loose-innodb-sys-tablestats=0 

loose-innodb-sys-indexes=0 

loose-innodb-sys-columns=0 

loose-innodb-sys-fields=0 

loose-innodb-sys-foreign=0 

loose-innodb-sys-foreign-cols=0
slow_query_log_file=/usr/local/webserver/mysql/mysql_slow.log

long_query_time = 1

[mysqldump]

quick

max_allowed_packet = 32M

4.初始化数据库

/usr/local/webserver/mysql/scripts/mysql_install_db --defaults-file=/etc/my.cnf  --user=mysql

在这里插入图片描述
上面语法报错FATAL ERROR: Could not find ./bin/my_print_defaults
问题原因:操作时绝对路径下找不到该文件,改成相对路径下执行
解决方法:切换到安装目录路径(/usr/local/webserver/mysql)下执行
./scripts/mysql_install_db --defaults-file=/etc/my.cnf --user=mysql
5.创建开机启动脚本

cd /usr/local/webserver/mysql/
cp support-files/mysql.server /etc/rc.d/init.d/mysqld 
 chkconfig --add mysqld 
 chkconfig --level 35 mysqld on
 

6.启动mysql服务器

service mysqld start

在这里插入图片描述
上面语法报错 The server quit without updating PID file (/usr/local/webserver/mysql/mysql.pid).
问题原因:查看路径下没有文件mysql.pid,mysql所有者是root,mysql用户没有创建权限
解决方法:将mysql文件夹下的所有者给mysql,chown -R mysql:mysql mysql

7.连接 MySQL

/usr/local/webserver/mysql/bin/mysql -u root -p

root用户下没有密码,回车 进入
8.修改密码:
首先登录MySQL。
格式:mysql> set password for 用户名@localhost = password(‘新密码’);

9.将mysql加入到linux环境变量中 ,mysql -u 用户名 -p 密码生效


MYSQL_HOME=/usr/local/webserver/mysql
JAVA_HOME=/usr/local/src/jkd1.8
JAVA_BIN=/usr/local/src/jkd1.8/bin
PATH=$JAVA_HOME/bin:$PATH:$MYSQL_HOME/bin
CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export JAVA_HOME JAVA_BIN PATH CLASSPATH MYSQL_HOME

10.连接外部sql软件 。开放权限:

grant all on *.* to
'root'@'%' identified by 'root';

11.其他命令
启动:service mysqld start
停止:service mysqld stop
重启:service mysqld restart
重载配置:service mysqld reload

猜你喜欢

转载自blog.csdn.net/weixin_44767679/article/details/101621435