Linux下操作数据库
一、安装数据库
1.卸载旧版本
- 检查是否安装有MySQL Server:rpm -qa | grep mysql
- rpm -e mysql_libs //普通删除模式
- rpm -e --nodeps mysql_libs // 强力删除模式,如果使用上面命令删除时,提示有依赖的其它文件,则用该命令可以对其进行强力删除
2.安装MySQL
1)yum在线安装
- 通过命令查看yum上提供的数据库可下载版本:yum list | grep mysql
- 安装数据库: yum -y install mysql-server mysql-devel
2)编译安装MySQL
- 安装编译的环境(需要的包):yum -y install make gcc-c++ cmake bison-devel ncurses-devel
- 下载mysql-5.6.14.tar.gz,并解压:tar -zxvf mysql-5.6.14.tar.gz
- 进入到解压后的文件夹:cd mysql-5.6.14
- 编译安装[源码=》编译]:cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_DATADIR=/usr/local/mysql/data -DSYSCONFDIR=/etc -DWITH_MYISAM_STORAGE_ENGINE=1 -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_MEMORY_STORAGE_ENGINE=1 -DWITH_READLINE=1 -DMYSQL_UNIX_ADDR=/var/lib/mysql/mysql.sock -DMYSQL_TCP_PORT=3306 -DENABLED_LOCAL_INFILE=1 -DWITH_PARTITION_STORAGE_ENGINE=1 -DEXTRA_CHARSETS=all -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci
- 编译并安装:make && make install
- 配置MySQL:
- 查看是否有mysql用户及用户组:cat /etc/passwd 查看用户列表;cat /etc/group 查看用户组列表
- 创建mysql用户及用户组:groupadd mysql;useradd -g mysql mysql
- 修改/usr/local/mysql权限:chown -R mysql:mysql /usr/local/mysql
- 初始化配置,进入安装路径(在执行下面的指令),执行初始化配置脚本,创建系统自带的数据库和表:cd /usr/local/mysql;初始化指令:scripts/mysql_install_db --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --user=mysql
- 注意点:1.在启动MySQL服务时,会按照一定次序搜索my.cnf,先在/etc目录下找,找不到则会搜索"$basedir/my.cnf",在本例中就是 /usr/local/mysql/my.cnf,这是新版MySQL的配置文件的默认位置
2.在CentOS 6.8版操作系统的最小安装完成后,在/etc目录下会存在一个my.cnf,需要将此文件更名为其他的名字,如:/etc/my.cnf.bak,否则,该文件会干扰源码安装的MySQL的正确配置,造成无法启动,修改名 称,防止干扰:mv /etc/my.cnf /etc/my.cnf.bak
3.连接数据库
1)查看是否是开机启动(若2~5都是on则表明是开机启动):chkconfig --list | grep mysql
2)设置开机启动(若2~5都是off):chkconfig mysql on
3)启动数据库:service mysql start
4)停止数据库 service mysql stop
5)进入mysql并设置密码为XXX:
- 进入mysql目录:cd /usr/local/mysql/bin
- 第一次登陆不需要密码:./mysql -u root -p
- 设置密码:mysql> SET PASSWORD = PASSWORD('XXX');
- 明文登录:./mysql -u root -pXXX,-p和XXX之间没有空格
4.Windows的navicat连接Linux的数据库报错
解决办法:
- 关闭防火墙:service iptables stop
- 授权:GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '123456' WITH GRANT OPTION; FLUSH PRIVILEGES;
- 启动数据库:service mysql start
二、执行SQL语句
- 创建数据库:create database IF NOT EXISTS test;
- 查看当前系统中存在的数据库:show databases;
- 切换到test数据库:use test;
- 创建表:create table IF NOT EXISTS test001;
- 查询数据:
- 更新数据:
- 删除数据:
三、配置mysql环境变量
1.修改配置文件:vi /etc/profile
- 方法一:写一个MYSQL_HOME,值为mysql的安装路径:MYSQL_HOME=/usr/local/mysql
在PATH后面加上$MYSQL_HOME/bin:PATH=$PATH:$MYSQL_HOME/bin
export后面加上MYSQL_HOME:export PATH MYSQL_HOME
- 方法一:写一个MYSQL_HOME,值为mysql的安装路径:MYSQL_HOME=/usr/local/mysql
- 方法二:vi /etc/profile进入后,在最后一行添加:export PATH=$PATH:/usr/local/mysql/bin即可
2.重新加载配置文件:source /etc/profile
四、编写SQL脚本
1.新建脚本(opt目录下):touch deldata.sh
2.编写sql语句:
- #!/bin/bash
- mysql的安装路径:mysql=/usr/local/mysql/bin/mysql(或者将mysql加入环境变量)
- #数据库信息:
HOSTNAME="IP"
PORT="3306"
USERNAME="root"
PASSWORD="123456"
- #数据库和数据表名称:
DBNAME="tes"
TABLENAME="test001"
- #插入数据:
sql="insert into ${TABLENAME} values('王五',88888)"
mysql -h${HOSTNAME} -P${PORT} -u${USERNAME} -p${PASSWORD} ${DBNAME} -e"${sql}"
- #查询数据:
sql="select * from ${TABLENAME}"
mysql -h${HOSTNAME} -P${PORT} -u${USERNAME} -p${PASSWORD} ${DBNAME} -e"${sql}"
Linux下操作数据库的更多相关文章
- linux下mysql数据库的操作
本文主要针对linux下mysql数据库的安装,以及数据库的创建和简单的数据库操作进行说明. ①.Mysql数据库的安装: 数据库的安装分为源码安装和rpm安装. 当然对于老手来说需要进行一些自定义的 ...
- Linux下链接数据库图形化工具
(一).Linux环境下mysql的安装.SQL操作 Linux下安装MySQL (rmp --help) 基本步骤:上传软件->检查当前Linux环境是否已经安装,如发现系统自带的,先卸载-& ...
- Linux下MySQL数据库主从同步配置
说明: 操作系统:CentOS 5.x 64位 MySQL数据库版本:mysql-5.5.35 MySQL主服务器:192.168.21.128 MySQL从服务器:192.168.21.129 准备 ...
- Linux下MySQL数据库的备份与恢复
Linux下MySQL数据库的备份与恢复 作者:Grey 原文地址: Github 语雀 博客园 基于版本 MySQL5.7 Deepin Linux 15.11 xtrabackup-2.4.18 ...
- Linux 下操作GPIO(两种方法,驱动和mmap)(转载)
目前我所知道的在Linux下操作GPIO有两种方法: 1.编写驱动,这当然要熟悉Linux下驱动的编写方法和技巧,在驱动里可以使用ioremap函数获得GPIO物理基地址指针,然后使用这个指针根据io ...
- Linux 下操作gpio(两种方法,驱动和mmap)
目前我所知道的在linux下操作GPIO有两种方法: 1. 编写驱动,这当然要熟悉linux下驱动的编写方法和技巧,在驱动里可以使用ioremap函数获得GPIO物理基地址指针,然后使用这个指针根据 ...
- linux下操作gpio寄存器的方法
一. 在驱动中: 1. 用的时候映射端口:ioremap; #define GPIO_OFT(x) ((x) - 0x56000000) #define GPFCON (*(volatile unsi ...
- linux下oracle数据库字符集修改
linux下oracle数据库字符集修改 0.RHEL6.7.oracle11gr2 1.登录oracle.在安装oracle的用户下进入数据库. $ sqlplus / as sysdba 2.查询 ...
- 记录--linux下mysql数据库问题
本次主要记录一下linux下mysql数据库的一些问题,也是之前经常用到的知识,这里简单总结一些问题,方便自己以后的回顾.原来一直使用的是阿里云的RDS数据库mysql版,主要是因为上次阿里云做活动可 ...
随机推荐
- Mac laravel: command not found
如果用的oh-my-zsh 安装laravel 提示找不到.可以试试下面的 export PATH=$HOME/bin:/usr/local/bin:~/.composer/vendor/bin:$P ...
- linux系统下常用的打包/解压缩包命令
此处大概列了常用的解压和打包命令,详细信息需要百度一一对比他们的区别,比如我们在下载软件时就是最好的实践. 用zip举例说明,使用命令压缩时有点是,压缩文件.目录会非常快:如图,我压缩了一个progr ...
- Mac OS 上安装 PostgreSQL
PostgreSQL Database Download https://www.enterprisedb.com/downloads/postgres-postgresql-downloads 下载 ...
- 无旋Treap模板
传送门 Code #include<bits/stdc++.h> #define ll long long #define max(a,b) ((a)>(b)?(a):(b)) # ...
- bootstraptable重新加载
bootstraptable需要彻底重新加载,发现即使url等参数更新过来仍旧无效.需要调用 $("#resource_table").bootstrapTable('destro ...
- #C++初学记录(判断子串#数学结合)
A Count Task Problem Description Count is one of WNJXYK's favorite tasks. Recently, he had a very lo ...
- Perl寻路A*算法实现
A*算法:A*(A-Star)算法是一种静态路网中求解最短路径最有效的直接搜索方法.估价值与实际值越接近,估价函数取得就越好. 公式表示为: f(n)=g(n)+h(n),其中 f(n) 是从初始点经 ...
- 深度学习面试题21:批量归一化(Batch Normalization,BN)
目录 BN的由来 BN的作用 BN的操作阶段 BN的操作流程 BN可以防止梯度消失吗 为什么归一化后还要放缩和平移 BN在GoogLeNet中的应用 参考资料 BN的由来 BN是由Google于201 ...
- arcgis python 获得arcgis的版本和安装路径
import arcpy # Use the dictionary iteritems to iterate through # the key/value pairs from GetInstall ...
- 『MXNet』第六弹_Gluon性能提升 静态图 动态图 符号式编程 命令式编程
https://www.cnblogs.com/hellcat/p/9084894.html 目录 一.符号式编程 1.命令式编程和符号式编程 2.MXNet的符号式编程 二.惰性计算 用同步函数实际 ...