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版,主要是因为上次阿里云做活动可 ...
随机推荐
- 深度Linux /etc/profile 环境变量生效问题
/etc/profile 环境变量生效问题 设置了环境变量后 ,使用source /etc/profile生效后,每次关闭终端后,都需要重新输入source /etc/profile命令使环境变量生效 ...
- 利用nc当作备用shell管理方案.
ssh 有时候真的就是连不上了,然后是没什么然后了呢. 或者手残改错配置然后重新sshd了. 所以这时候需要备用的远程管理工具.nc是最好的选择,一般服务器都是 内网的,如果跳板机也管理不了呢. 安装 ...
- linux 常用性能优化
linux 常用性能优化 1. 优化内核相关参数 配置文件/etc/sysctl.conf 配置方法直接将参数添加进文件每条一行. sysctl -a可以查看默认配置 sysctl -p 执行并检测是 ...
- DirectX学习入门笔记(一)
原文:https://blog.csdn.net/butcher986115/article/details/50595937 什么是DirectX? DirectX是游戏制作者的API(Appli ...
- zabbix监控线
echo mntr | nc 127.0.0.1 2181获取mntr的信息 换成conf将获得conf信息,从中找出需要监控项 conf: clientPort:客户端端口号 dataDir:数据文 ...
- web 安全登录算法
摘自:http://hi.baidu.com/weiqi228/blog/item/922e961bbcc2c0188618bfb5.html 对于 Web 应用程序,安全登录是很重要的.但是目前大多 ...
- [Windows] 输入字符间距变宽
今天在输入时,不会到误触到哪里,输入的字符间距变得很宽,如下图: 最后找到原因是不小心同时按下了 Shift+Space(空格),进入全角模式,就会导致输入的字符间距变宽 想要恢复,再按一次 shif ...
- Python操作excel工具
python操作excel的工具类有很多,下面举几个常见的工具类: 一. 1.xlrd 只能读取excel操作,支持xls和xlsx两种格式的 2.xlwt 只能写入excel操作,只支持 xls格式 ...
- file_put_contents 和php://input 实现存储数据进图片中
<?php /** *Recieve p_w_picpath data **/ error_reporting(E_ALL); function get_contents() { $xmlstr ...
- ThreadPoolExecutor 定制线程池参数
在 java 开发中经常需要执行一些“规格化”的任务,此时可以使用 java 线程池.节省创建线程时间,任务来时即可执行,高效. java 包是 java.util.concurrent .创建线程池 ...