linux安装iscp数据库提示已经存在一、linux安装 , 按百度上mysql安装步骤进行,参考:
我是自己从windows先把mysql的linux包下下来,通过共享的方式将mysql的安装包复制到linux操作系统的/usr/local/mysql 路径下
1、我下载的包是:mysql-8.0.22-linux-glibc2.12-x86_64.tar.xz
故先解压再安装
1)xz -d mysql-8.0.22-linux-glibc2.12-x86_64.tar.xz
2)tar -xvf mysql-8.0.22-linux-glibc2.12-x86_64.tar
2、查看linux系统下是否有安装mysql,有的话先卸载 , 查看命令
whereis mysql;find / -name mysql
将查找出来的文件和目录都删除掉,删除后再用以上命令查看是否删除干净
3、为mysql创建所属用户组和用户名(如果用户组和用户名存在就无需创建了,使用cat /etc/group | grep mysql;cat /etc/passwd | grep mysql)
groupadd mysql
useradd -r -g mysql mysql
4、在/usr/local/mysql创建data目录
mkdir /usr/local/mysql/data
5、将mysql设置权限
chown -R mysql:mysql /usr/local/mysql
chmod -R 755 /usr/local/mysql
6、 编译安装并初始化数据库
cd /usr/local/mysql/bin
./mysqld --initialize --user=mysql --datadir=/usr/local/mysql/data --basedir=/usr/local/mysql
编译安装初始化数据库的时候出现问题报没有libaio这个软件
可通过yum进行安装该软件:yum install libaio-devel.x86_64
如果你不知道包名是什么,可通过 yum search libaio,会列出来相关的包,选择你要安装的包就可以了
初始化成功后:记录日志最末尾位置root@localhost:后的字符串,此字符串为mysql管理员临时登录密码 。
7、编辑配置文件my.cnf
此处我打开后my.cnf默认有如下:
[mysqld]
datadir=/var/mysql/data
socket=/var/lib/mysql/mysql.sock
symbolic-links=0
随后我根据参考步骤将其余几项也添加进去,且修改了datadir 将socket这项删除了
[mysqld]
datadir=/usr/local/mysql/data
port=3306
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
symbolic-links=0
max_connections=600
innodb_file_per_table=1
lower_case_table_names=1
character_set_server=utf8
8、启动mysql服务器
/usr/local/mysql/support-files/mysql.server start
问题来了,怎么都启动不了,老是说the server PID file not found
?
我将百度上所有的方法都试了一边都不行,百度上的方法有如下:
MySQL server PID file could not be found! 解决办法
1.可能是/usr/local/mysql/data/rekfan.pid文件没有写的权限
解决方法 :给予权限,执行 “chown -R mysql:mysql /var/data” “chmod -R 755 /usr/local/mysql/data” 然后重新启动mysqld!
2.可能进程里已经存在mysql进程
解决方法:用命令“ps -ef|grep mysqld”查看是否有mysqld进程,如果有使用“kill -9 进程号”杀死,然后重新启动mysqld!
3.可能是第二次在机器上安装mysql , 有残余数据影响了服务的启动
解决方法:去mysql的数据目录/data看看 , 如果存在mysql-bin.index,就赶快把它删除掉吧,它就是罪魁祸首了 。本人就是使用第三条方法解决的 !
4.mysql在启动时没有指定配置文件时会使用/etc/my.cnf配置文件,请打开这个文件查看在[mysqld]节下有没有指定数据目录(datadir)
解决方法:请在[mysqld]下设置这一行:datadir = /usr/local/mysql/data
5.skip-federated字段问题
解决方法:检查一下/etc/my.cnf文件中有没有没被注释掉的skip-federated字段,如果有就立即注释掉吧 。
6.错误日志目录不存在
解决方法:使用“chown” “chmod”命令赋予mysql所有者及权限
7.selinux惹的祸 , 如果是centos系统,默认会开启selinux
解决方法:关闭它,打开/etc/selinux/config,把SELINUX=enforcing改为SELINUX=disabled后存盘退出重启机器试试 。
8.解决办法
cd/usr/local/mysqlcd/usr/local/mysqlchown -R mysql.mysql .
su?mysqlsu?mysql cd /usr/local/mysql
scripts/mysqlinstalldbscripts/mysqlinstalldb exit
/etc/init.d/mysqld restart
上面没有解决的话 , 查看磁盘空间大小 df -h 清空binlog
如果上面都不成的话,最终解决办法,如果是主从的话 , 要重新同步
删除了 ib_logfile0 和 ib_logfile1 两个文件,就正常了
后面我从另外一篇文档上找到了根本原因,意思是参考自己数据库编译安装初始化的时候的错误日志 , 根据错误的日子去找原因,我在/usr/local/mysql/data/centos7.err里找到了,就是说mysql启动时使用的datadir是错误的,告诉我需要重新创建data,
此后我将原先的data改名为data1,再次重新初始化一下生成data后 , 就可以正常启动了 。(个人认为肯定是初始化的时候,datadir没有将my.cnf中的datadir覆盖导致的)
9、为mysql启动创建软连接:
ln -s /usr/local/mysql/bin/mysqld /usr/bin/mysql
10、数据库好不容易装好后,有忘记数据库登录的密码,修改密码也耗了好多时间,因为不知道mysql5.6以上版本将password()这个函数去掉了 , mysql8.修改登录密码如下:
参考:
1) 进入配置文件 vim /etc/my.cnf 添加代码 skip-grant-tables 即可跳过mysql密码验证进行登录
2)重启mysql
3)需要先将root密码置空 update user set authentication_string='' whereuser = 'root';
4)再次编辑配置文件my.cnf 去除免密码登陆
修改mysql配置 , 删掉或注释掉步骤1中添加的语句 skip-grant-tables
5)重启服务
service mysql restart
6)修改密码,执行如下命令:
mysql -u root -p //提示输入密码时直接敲回车,刚刚已经将密码置空了
开始修改密码:
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '密码';
FLUSH PRIVILEGES;
linux复制命令linux复制命令cp 。
cp命令主要用来复制文件和目录,语法“cp [选项] 源文件 目标文件”,可以将一个或多个源文件或目录复制到指定文件或目录下;同时借助某些选项,还可以实现复制整个目录 , 以及比对两文件的新旧而予以升级等功能 。
含义
一般的Linux使用者均为普通用户,而系统管理员一般使用超级用户帐号完成一些系统管理的工作 。如果只需要完成一些由普通帐号就能完成的任务,建议不要使用超级用户帐号,以免无意中破坏系统 。影响系统的正常运行 。
用户登录分两步:第一步,输入用户的登录名 , 系统根据该登录名识别用户;第二步,输入用户的口令 , 该口令是用户自己设置的一个字符串,对其他用户是保密的 , 是在登录时系统用来辨别真假用户的关键字 。
linux命令cp命令(复制文件,递归复制目录)cp a.txt b.txt 复制文件
cp -a a.txt b.txt 复制文件的时候,同时复制原文件的属性,这样得到的文件会一模一样,比如拥有相同的组,拥有者和执行权限
cp-r ./test./test1递归复制文件夹,会将test下的所有文件都复制,但是需要注意的是目标必须是一个目录,不能是文件名
Linux 命令 & shell 脚本之01(cp & scp命令)Linux cp命令主要用于复制文件或目录
1.语法
2.参数说明
3.案例
3.1. cp 命令基本用法
3.2 复制目录
3.3 复制软链接文件
3.4. 保留源文件属性复制
3.5."-l" 和 "-s" 选项
4.cat
6.linux快速删除大量文件
Linux cp命令使用cd /home/public/pro1011/androidfor i in `ls -al |grep -v ".svn"`do cp -r $i /home/cx/pro1011/androiddone
关于linux 命令cp1、多个命令
find /root -name "file1" |xargs dirname |awk '{print "/test/"$1}'|xargs mkdir -p
cp `find /root -name "file1"` `find /root -name "file1" |xargs dirname |awk '{print "/test/"$1}'`
2、用for循环
[root@vs_6170_07 test]# more cplist.sh
#!/bin/bash
for filename in `find /root -type f -name "file1"`
do
echo $filename;
mkdir -p /test`dirname $filename`
cp $filename /test`dirname $filename`
ls -l /test$filename
done
【linuxcp命令安装 linux安装常用命令】关于linuxcp命令安装和linux安装常用命令的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站 。
推荐阅读
- 注册公众号有几种方式,注册公众号的流程
- 免备案云服务器租赁,免备案云服务器活动
- mysql如何连接一个前端界面,mysql如何链接数据库
- vb.net.csv读取 net 读取csv文件
- 手机传视频为什么会卡,为什么手机传视频很模糊
- 角色扮演游戏打boss,角色扮演玩什么
- 电脑上的体育竞技类游戏,电脑体育游戏推荐
- python函数里循环 python循环定义函数
- oracle小数取整函数,直接舍去小数取整函数