1. 程式人生 > >MySQL下載安裝

MySQL下載安裝

mac mysql aux 初始化 rest top password 這一 program 包安裝

一.mysql介紹

MySQL是一個關系型數據庫管理系統,由瑞典MySQL AB 公司開發,目前屬於 Oracle 旗下公司。MySQL 最流行的關系型數據庫管理系統,在 WEB 應用方面MySQL是最好的 RDBMS (Relational Database Management System,關系數據庫管理系統) 應用軟件之一。

mysql是什麽???

mysql就是一個socekt服務端
客戶端軟件
  mysql自帶
  python模塊

其他類型的數據庫???

sqllite,db2,oracle,access,sql server,MySQL
分兩大類:
  關系型:上面這一坨,註意:sql語句通用
  非關系型:mongodb,redis,memcache

二.下載安裝

Linux版本

#二進制rpm包安裝
yum -y install mysql-server mysql
技術分享
1.解壓tar包
cd /software
tar -xzvf mysql-5.6.21-linux-glibc2.5-x86_64.tar.gz
mv mysql-5.6.21-linux-glibc2.5-x86_64 mysql-5.6.21

2.添加用戶與組
groupadd mysql
useradd -r -g mysql mysql
chown -R mysql:mysql mysql-5.6.21

3.安裝數據庫
su mysql
cd mysql
-5.6.21/scripts ./mysql_install_db --user=mysql --basedir=/software/mysql-5.6.21 --datadir=/software/mysql-5.6.21/data 4.配置文件 cd /software/mysql-5.6.21/support-files cp my-default.cnf /etc/my.cnf cp mysql.server /etc/init.d/mysql vim /etc/init.d/mysql #若mysql的安裝目錄是/usr/local/mysql,則可省略此步 修改文件中的兩個變更值 basedir=/software/mysql-5.6.21 datadir
=/software/mysql-5.6.21/data 5.配置環境變量 vim /etc/profile export MYSQL_HOME="/software/mysql-5.6.21" export PATH="$PATH:$MYSQL_HOME/bin" source /etc/profile 6.添加自啟動服務 chkconfig --add mysql chkconfig mysql on 7.啟動mysql service mysql start 8.登錄mysql及改密碼與配置遠程訪問 mysqladmin -u root password your_password #修改root用戶密碼 mysql -u root -p #登錄mysql,需要輸入密碼 mysql>GRANT ALL PRIVILEGES ON *.* TO root@% IDENTIFIED BY your_password WITH GRANT OPTION; #允許root用戶遠程訪問 mysql>FLUSH PRIVILEGES; #刷新權限
源碼安裝mysql 技術分享
1. 解壓
tar zxvf  mariadb-5.5.31-linux-x86_64.tar.gz   
mv mariadb-5.5.31-linux-x86_64 /usr/local/mysql //必需這樣,很多腳本或可執行程序都會直接訪問這個目錄

2. 權限
groupadd mysql             //增加 mysql 屬組 
useradd -g mysql mysql     //增加 mysql 用戶 並歸於mysql 屬組 
chown mysql:mysql -Rf  /usr/local/mysql    // 設置 mysql 目錄的用戶及用戶組歸屬。 
chmod +x -Rf /usr/local/mysql    //賜予可執行權限 

3. 拷貝配置文件
cp /usr/local/mysql/support-files/my-medium.cnf /etc/my.cnf     //復制默認mysql配置 文件到/etc目錄 

4. 初始化
/usr/local/mysql/scripts/mysql_install_db --user=mysql          //初始化數據庫 
cp  /usr/local/mysql/support-files/mysql.server    /etc/init.d/mysql    //復制mysql服務程序 到系統目錄 
chkconfig  mysql on     //添加mysql 至系統服務並設置為開機啟動 
service  mysql  start  //啟動mysql

5. 環境變量配置
vim /etc/profile   //編輯profile,將mysql的可執行路徑加入系統PATH
export PATH=/usr/local/mysql/bin:$PATH 
source /etc/profile  //使PATH生效。

6. 賬號密碼
mysqladmin -u root password yourpassword //設定root賬號及密碼
mysql -u root -p  //使用root用戶登錄mysql
use mysql  //切換至mysql數據庫。
select user,host,password from user; //查看系統權限
drop user ‘‘@localhost; //刪除不安全的賬戶
drop user [email protected]::1;
drop user [email protected]127.0.0.1;
select user,host,password from user; //再次查看系統權限,確保不安全的賬戶均被刪除。
flush privileges;  //刷新權限

7. 一些必要的初始配置
1)修改字符集為UTF8
vi /etc/my.cnf
在[client]下面添加 default-character-set = utf8
在[mysqld]下面添加 character_set_server = utf8
2)增加錯誤日誌
vi /etc/my.cnf
在[mysqld]下面添加:
log-error = /usr/local/mysql/log/error.log
general-log-file = /usr/local/mysql/log/mysql.log
3) 設置為不區分大小寫,linux下默認會區分大小寫。
vi /etc/my.cnf
在[mysqld]下面添加:
lower_case_table_name=1

修改完重啟:#service  mysql  restart

源碼安裝mariadb
源碼安裝mariadb

Window版本

1、下載

1 MySQL Community Server 5.7.16
2  
3 http://dev.mysql.com/downloads/mysql/

2、解壓

如果想要讓MySQL安裝在指定目錄,那麽就將解壓後的文件夾移動到指定目錄,如:C:\mysql-5.7.16-winx64

3、初始化

MySQL解壓後的 bin 目錄下有一大堆的可執行文件,執行如下命令初始化數據

1 cd c:\mysql-5.7.16-winx64\bin
2  
3 mysqld --initialize-insecure

4、啟動MySQL服務

執行命令從而啟動MySQL服務

1 # 進入可執行文件目錄
2 cd c:\mysql-5.7.16-winx64\bin
3  
4 # 啟動MySQL服務
5 mysqld

5、啟動MySQL客戶端並連接MySQL服務

由於初始化時使用的【mysqld --initialize-insecure】命令,其默認未給root賬戶設置密碼

1 # 進入可執行文件目錄
2 cd c:\mysql-5.7.16-winx64\bin
3  
4 # 連接MySQL服務器
5 mysql -u root -p
6  
7 # 提示請輸入密碼,直接回車

輸入回車,見下圖表示安裝成功:

技術分享

到此為止,MySQL服務端已經安裝成功並且客戶端已經可以連接上,以後再操作MySQL時,只需要重復上述4、5步驟即可。但是,在4、5步驟中重復的進入可執行文件目錄比較繁瑣,如想日後操作簡便,可以做如下操作。

a. 添加環境變量

將MySQL可執行文件添加到環境變量中,從而執行執行命令即可

1 【右鍵計算機】--》【屬性】--》【高級系統設置】--》【高級】--》【環境變量】--》【在第二個內容框中找到 變量名為Path 的一行,雙擊】 --> 【將MySQL的bin目錄路徑追加到變值值中,用 ; 分割】
2  
3 如:
4 C:\Program Files (x86)\Parallels\Parallels Tools\Applications;%SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\Wbem;%SYSTEMROOT%\System32\WindowsPowerShell\v1.0\;C:\Python27;C:\Python35;C:\mysql-5.7.16-winx64\bin

b. 將MySQL服務制作成windows服務

上一步解決了一些問題,但不夠徹底,因為在執行【mysqd】啟動MySQL服務器時,當前終端會被hang住,那麽做一下設置即可解決此問題:

註意:--install前,必須用mysql啟動命令的絕對路徑

1 # 制作MySQL的Windows服務,在終端執行此命令:
2 "c:\mysql-5.7.16-winx64\bin\mysqld" --install
3  
4 # 移除MySQL的Windows服務,在終端執行此命令:
5 "c:\mysql-5.7.16-winx64\bin\mysqld" --remove

註冊成服務之後,以後再啟動和關閉MySQL服務時,僅需執行如下命令:

1 # 啟動MySQL服務
2 net start mysql
3  
4 # 關閉MySQL服務
5 net stop mysql

三.mysql軟件基本管理

1. 啟動查看

[[email protected] ~]# systemctl start mariadb #啟動
[[email protected] ~]# systemctl enable mariadb #設置開機自啟動
Created symlink from /etc/systemd/system/multi-user.target.wants/mariadb.service to /usr/lib/systemd/system/mariadb.service.
[[email protected] ~]# ps aux |grep mysqld |grep -v grep #查看進程,mysqld_safe為啟動mysql的腳本文件,內部調用mysqld命令
mysql     3329  0.0  0.0 113252  1592 ?        Ss   16:19   0:00 /bin/sh /usr/bin/mysqld_safe --basedir=/usr
mysql     3488  0.0  2.3 839276 90380 ?        Sl   16:19   0:00 /usr/libexec/mysqld --basedir=/usr --datadir=/var/lib/mysql --plugin-dir=/usr/lib64/mysql/plugin --log-error=/var/log/mariadb/mariadb.log --pid-file=/var/run/mariadb/mariadb.pid --socket=/var/lib/mysql/mysql.sock
[[email protected] ~]# netstat -an |grep 3306 #查看端口
tcp        0      0 0.0.0.0:3306            0.0.0.0:*               LISTEN  
[[email protected] ~]# ll -d /var/lib/mysql #權限不對,啟動不成功,註意user和group
drwxr-xr-x 5 mysql mysql 4096 Jul 20 16:28 /var/lib/mysql
技術分享
安裝完mysql 之後,登陸以後,不管運行任何命令,總是提示這個
mac mysql error You must reset your password using ALTER USER statement before executing this statement.
解決方法:
step 1: SET PASSWORD = PASSWORD(your new password);
step 2: ALTER USER root@localhost PASSWORD EXPIRE NEVER;
step 3: flush privileges;

You must reset your password using ALTER USER statement before executing this statement.
View Code

2. 登錄,設置密碼

初始狀態下,管理員root,密碼為空,默認只允許從本機登錄localhost
設置密碼
[[email protected] ~]# mysqladmin -uroot password "123"        設置初始密碼 由於原密碼為空,因此-p可以不用
[[email protected] ~]# mysqladmin -uroot -p"123" password "456"        修改mysql密碼,因為已經有密碼了,所以必須輸入原密碼才能設置新密碼

命令格式:
[[email protected] ~]# mysql -h172.31.0.2 -uroot -p456
[[email protected] ~]# mysql -uroot -p
[[email protected] ~]# mysql                    以root用戶登錄本機,密碼為空

3. 忘記密碼

方法一:刪除授權庫mysql,重新初始化

[[email protected] ~]# rm -rf /var/lib/mysql/mysql #所有授權信息全部丟失!!!
[[email protected] ~]# systemctl restart mariadb
[[email protected] ~]# mysql

方法二:啟動時,跳過授權庫

[[email protected] ~]# vim /etc/my.cnf    #mysql主配置文件
[mysqld]
skip-grant-table
[[email protected] ~]# systemctl restart mariadb
[[email protected] ~]# mysql
MariaDB [(none)]> update mysql.user set password=password("123") where user="root" and host="localhost";
MariaDB [(none)]> flush privileges;
MariaDB [(none)]> \q
[[email protected] ~]# #打開/etc/my.cnf去掉skip-grant-table,然後重啟
[[email protected] ~]# systemctl restart mariadb
[[email protected] ~]# mysql -u root -p123 #以新密碼登錄

windows平臺下,5.7版本mysql,破解密碼的兩種方式

技術分享
#1 關閉mysql
#2 在cmd中執行:mysqld --skip-grant-tables
#3 在cmd中執行:mysql
#4 執行如下sql:
update mysql.user set authentication_string=password(‘‘) where user = root;
flush privileges;

#5 tskill mysqld
#6 重新啟動mysql

方式一
方式一 技術分享
#1. 關閉mysql,可以用tskill mysqld將其殺死
#2. 在解壓目錄下,新建mysql配置文件my.ini
#3. my.ini內容,指定
[mysqld]
skip-grant-tables

#4.啟動mysqld
#5.在cmd裏直接輸入mysql登錄,然後操作
update mysql.user set authentication_string=password(‘‘) where user=root and host=localhost;

flush privileges;

#6.註釋my.ini中的skip-grant-tables,然後啟動myqsld,然後就可以以新密碼登錄了

方式二
方式二

4. 在windows下,為mysql服務指定配置文件

#在mysql的解壓目錄下,新建my.ini,然後配置
[mysqld]
;skip-grant-tables
port=3306
character_set_server=utf8
#解壓的目錄
basedir=E:\mysql-5.7.19-winx64
#data目錄
datadir=E:\my_data #在mysqld --initialize時,就會將初始數據存入此處指定的目錄,在初始化之後,啟動mysql時,就會去這個目錄裏找數據

[client]
port=3306
default-character-set=utf8

四.數據庫操作

1 語法(help create database)

CREATE DATABASE 數據庫名 charset utf8;

2 數據庫命名規則

可以由字母、數字、下劃線、@、#、$
區分大小寫
唯一性
不能使用關鍵字如 create select
不能單獨使用數字
最長128位

3 數據庫相關操作

查看數據庫
show databases;
show create database db1;
select database();
選擇數據庫
USE 數據庫名
刪除數據庫
DORP DATABASE 數據庫名;
修改數據庫
alter database db1 charset utf8;

MySQL下載安裝