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 mysqluseradd -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

    • 方法二: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}"

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM