MySQL安装过程中出现的问题_MySQL
bitsCN.com
MySQL安装过程中出现的问题
1>解压缩MySQL
[html] [root@localhost test]# tar -xvf MySQL-5.6.12-2.linux_glibc2.5.i386.rpm-bundle.tar MySQL-test-5.6.12-2.linux_glibc2.5.i386.rpm MySQL-shared-5.6.12-2.linux_glibc2.5.i386.rpm MySQL-embedded-5.6.12-2.linux_glibc2.5.i386.rpm MySQL-client-5.6.12-2.linux_glibc2.5.i386.rpm MySQL-devel-5.6.12-2.linux_glibc2.5.i386.rpm MySQL-server-5.6.12-2.linux_glibc2.5.i386.rpm MySQL-shared-compat-5.6.12-2.linux_glibc2.5.i386.rpm
2>安装MySQL
[html]
(1) 如果已经安装了MySQL,会出现以下提示信息:
[root@localhost test]# rpm -ivh MySQL-server-5.6.12-2.linux_glibc2.5.i386.rpm Preparing... ########################################### [100%] package MySQL-server-5.6.12-2.linux_glibc2.5.i386 is already installed [root@localhost test]# rpm -ivh MySQL-client-5.6.12-2.linux_glibc2.5.i386.rpm Preparing... ########################################### [100%] package MySQL-client-5.6.12-2.linux_glibc2.5.i386 is already installed
可以先进行卸载MySQL
使用命令rpm –e MySQL-server-5.6.12-2.linux_glibc2.5.i386.rpm –nodeps
[html] rpm –e MySQL-server-5.6.12-2.linux_glibc2.5.i386.rpm --nodeps
(2)如果没有提示这些信息,那么会正常安装.
[html] [root@localhost test]# rpm -ivh MySQL-server-5.6.12-2.linux_glibc2.5.i386.rpm Preparing... ########################################### [100%] 1:MySQL-server ########################################### [100%] [root@localhost test]# rpm -ivh MySQL-client-5.6.12-2.linux_glibc2.5.i386.rpm Preparing... ########################################### [100%] 1:MySQL-client ########################################### [100%]
3>启动MySQL
(1)首次启动MySQL服务器,出现异常信息的解决办法
[html] [root@localhost test]# service mysql start Starting MySQL.......................... ERROR! The server quit without updating PID file (/var/lib/mysql/localhost.pid).
由于mysql启动的僵死进程,需要将其杀死之后方能启动
[html] [root@localhost test]# ps -ef | grep mysql root 1953 1 0 22:18 ? 00:00:00 /bin/sh /usr/bin/mysqld_safe --datadir=/var/lib/mysql --pid-file=/var/lib/mysql/localhost.localdomain.pid mysql 2171 1953 0 22:18 ? 00:00:04 /usr/sbin/mysqld --basedir=/usr --datadir=/var/lib/mysql --plugin-dir=/usr/lib/mysql/plugin --user=mysql --log-error=/var/lib/mysql/localhost.localdomain.err --pid-file=/var/lib/mysql/localhost.localdomain.pid root 3282 1 0 22:37 pts/0 00:00:00 /bin/sh /usr/bin/mysqld_safe --datadir=/var/lib/mysql --pid-file=/var/lib/mysql/localhost.pid mysql 3386 3282 2 22:37 pts/0 00:00:01 /usr/sbin/mysqld --basedir=/usr --datadir=/var/lib/mysql --plugin-dir=/usr/lib/mysql/plugin --user=mysql --log-error=/var/lib/mysql/localhost.err --pid-file=/var/lib/mysql/localhost.pid root 3482 2681 0 22:38 pts/0 00:00:00 grep mysql
使用kill -9 2171之类杀死
再使用service mysql start或者/etc/init.d/mysql start
[html] [root@localhost test]# service mysql start Starting MySQL SUCCESS!
4>登录MySQL
[html] [root@localhost test]# mysql -u root -p Enter password: Welcome to the MySQL monitor. Commands end with ; or /g. Your MySQL connection id is 2 Server version: 5.6.12 MySQL Community Server (GPL) Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved. Oracle is a registered trademark of Oracle Corporation and/or its affiliates. Other names may be trademarks of their respective owners. Type 'help;' or '/h' for help. Type '/c' to clear the current input statement.
第一次登录的密码在~/.mysql_secret中
[html] cat .mysql_secret 进入mysql之后需要设置密码,否则不能进行任何操作,如果提示ERROR 1862 (HY000): Your password has expired. To log in you mustchange it using a client that supports expired passwords. /
那么也需要重新设置密码
MySQL文档中词条MYSQL_OPT_CAN_HANDLE_EXPIRED_PASSWORDS有下面的信息
查找SET PASSWORD
为root用户设置新密码
[html] set password for ‘root’@’localhost’=password(‘root’)
之后可以进行正常的操作
忘记mysql root密码的解决方法
一. MySQL密码的恢复方法之一
如果忘记了MySQL的root密码,可以用以下方法重新设置:
1. KILL掉系统里的MySQL进程;[html] killall -TERM mysqld 2. 用以下命令启动MySQL,以不检查权限的方式启动;[html] safe_mysqld --skip-grant-tables & 3. 然后用空密码方式使用root用户登录 MySQL;[html] mysql -u root 4. 修改root用户的密码;[html] mysql> update mysql.user set password=PASSWORD('新密码') where User='root'; mysql> flush privileges; mysql> quit
重新启动MySQL,就可以使用新密码登录了。
二. MySQL密码的恢复方法二
有可能你的系统没有 safe_mysqld 程序(比如我现在用的 ubuntu操作系统, apt-get安装的mysql) , 下面方法可以恢复
1. 停止mysqld;
[html] /etc/init.d/mysql stop
(您可能有其它的方法,总之停止mysqld的运行就可以了)
2. 用以下命令启动MySQL,以不检查权限的方式启动;
[html] mysqld --skip-grant-tables &
3. 然后用空密码方式使用root用户登录 MySQL;
mysql -u root
4. 修改root用户的密码;
[html] mysql> update mysql.user set password=PASSWORD('newpassword') where User='root'; mysql> flush privileges; mysql> quit
重新启动MySQL
[html] /etc/init.d/mysql restart
就可以使用新密码 newpassword 登录了
mysql The server quit without updating PID file异常解决办法
安装好mysql后,用
Java代码
/usr/local/mysql/bin/mysqld_safe &
去启动mysql,总是处于僵死状态,后来去suport_files 用mysql.server start 来启动,
提示mysql The server quit without updating PID file。在网上找了下,原来说是有mysql
启动的僵死进程。
用ps -ef |grep mysql 发现有
Php代码 root 4507 1 0 21:40 ? 00:00:00 /bin/sh /usr/local/mysql/bin/mysqld_safe --user=mysql mysql 4793 4507 0 21:40 ? 00:00:03 /usr/local/mysql/bin/mysqld --basedir=/usr/local/mysql.......
于是kill 4793,再启动。就正常了
ps:kill root下的进程4507是没
Mysql报错的解决'Can't connect to local MySQL server through socket '/tmp/mysql.sock'
[root@localhost mysql]# mysqlERROR 2002 (HY000): Can't connect to local MySQL server through socket '/tmp/mysql.sock' (111)[root@localhost mysql]# service mysqld restart 这里说明mysqld并没有启动,MySQL manager or server PID file could not be found! [FAILED]Starting MySQL/etc/init.d/mysqld: line 159: kill: (18977) - No such process [FAILED][root@localhost mysql]# cd bin[root@localhost bin]# ./mysqlERROR 2002 (HY000): Can't connect to local MySQL server through socket '/tmp/mysql.sock' (111) 这里就说了不能通过/tmp/mysql.sock连接数据库。[root@localhost bin]# cd /tmp 进去检查,看到有这个文件,所以看别的原因。[root@localhost tmp]# lsgconfd-root mapping-root mysql.sock mysql-test-ports mysql-test-ports.sem scim-panel-socket:0-root VMwareDnD vmware-root vmware.txt[root@localhost tmp]# cd /usr/local/mysql/[root@localhost mysql]# pwd/usr/local/mysql[root@localhost mysql]# chown -R root:mysql . 忽然想起来了没有设置权限呢,开始设置权限[root@localhost mysql]# lltotal 36drwxr-xr-x 2 root mysql 4096 Nov 28 21:51 bindrwxr-xr-x 3 root mysql 4096 Nov 28 21:50 includedrwxr-xr-x 2 root mysql 4096 Nov 28 21:50 infodrwxr-xr-x 3 root mysql 4096 Nov 28 21:50 libdrwxr-xr-x 2 root mysql 4096 Nov 28 21:51 libexecdrwxr-xr-x 4 root mysql 4096 Nov 28 21:50 mandrwxr-xr-x 8 root mysql 4096 Nov 28 21:51 mysql-testdrwxr-xr-x 3 root mysql 4096 Nov 28 21:50 sharedrwxr-xr-x 5 root mysql 4096 Nov 28 21:50 sql-bench[root@localhost mysql]# chown -R mysql /var/lib/mysql[root@localhost mysql]# cp share/mysql/my-huge.cnf /etc/my.cnf[root@localhost mysql]# cp share/mysql/mysql.server /etc/rc.d/init.d/mysqld[root@localhost mysql]# chmod 755 /etc/rc.d/init.d/mysqld[root@localhost mysql]# chkconfig --add mysqld[root@localhost mysql]# chkconfig --level 345 mysqld on=======error========[root@localhost mysql]# mysqladmin -u root password 'uplooking'mysqladmin: connect to server at 'localhost' failederror: 'Can't connect to local MySQL server through socket '/tmp/mysql.sock' (111)'Check that mysqld is running and that the socket: '/tmp/mysql.sock' exists! 又是上边一样的错误[root@localhost mysql]# bin/mysql startERROR 2002 (HY000): Can't connect to local MySQL server through socket '/tmp/mysql.sock' (111)[root@localhost mysql]# /etc/rc.d/init.d/mysqld statusMySQL is not running, but lock exists [FAILED] 这里说的是没有运行着mysql,但是还在锁定。这时候我看到了下边那篇文章,重新检查了一遍权限,[root@localhost mysql]# chown -R mysql:mysql /var/lib/mysql 在这里,我原来设置的时候这个组没有设置,只写了chown -R mysql /var/lib/mysql,分组被我忽略掉了,哎,折腾这么长时间。[root@localhost mysql]# /etc/rc.d/init.d/mysqld start 从这里,mysql启动正常了Starting MySQL [ OK ][root@localhost mysql]# /etc/rc.d/init.d/mysqld stopShutting down MySQL [ OK ][root@localhost mysql]#[root@localhost mysql]# mysqladmin -u root password 'uplooking' 这里是说服务器没有启动mysqladmin: connect to server at 'localhost' failederror: 'Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)'Check that mysqld is running and that the socket: '/tmp/mysql.sock' exists![root@localhost mysql]# /etc/rc.d/init.d/mysqld start 启动服务器Starting MySQL [ OK ][root@localhost mysql]# mysqladmin -u root password 'uplooking' 添加root密码[root@localhost mysql]# mysqlERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)[root@localhost mysql]# mysql -u root -p 用root密码登陆,测试。Enter password:Welcome to the MySQL monitor. Commands end with ; or /g.Your MySQL connection id is 3Server version: 5.0.56-Comsenz-log SourceType 'help;' or '/h' for help. Type '/c' to clear the buffer.mysql> show databases;+--------------------+| Database |+--------------------+| information_schema || mysql || test |+--------------------+3 rows in set (0.00 sec)mysql> quitBye[root@localhost mysql]# service mysqld restartShutting down MySQL [ OK ]Starting MySQL [ OK ][root@localhost mysql]#====权限的验证测试====[root@localhost mysql]# cd /tmp[root@localhost tmp]# mkdir test[root@localhost tmp]# cd test[root@localhost test]# ls[root@localhost test]# touch 11[root@localhost test]# lltotal 0-rw-r--r-- 1 root root 0 Nov 28 22:37 11[root@localhost test]# chown -R mysql 11[root@localhost test]# lltotal 0-rw-r--r-- 1 mysql root 0 Nov 28 22:37 11[root@localhost test]#=========================
bitsCN.com

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

MySQL在Web應用中的主要作用是存儲和管理數據。 1.MySQL高效處理用戶信息、產品目錄和交易記錄等數據。 2.通過SQL查詢,開發者能從數據庫提取信息生成動態內容。 3.MySQL基於客戶端-服務器模型工作,確保查詢速度可接受。

InnoDB使用redologs和undologs確保數據一致性和可靠性。 1.redologs記錄數據頁修改,確保崩潰恢復和事務持久性。 2.undologs記錄數據原始值,支持事務回滾和MVCC。

MySQL是一種開源的關係型數據庫管理系統,主要用於快速、可靠地存儲和檢索數據。其工作原理包括客戶端請求、查詢解析、執行查詢和返回結果。使用示例包括創建表、插入和查詢數據,以及高級功能如JOIN操作。常見錯誤涉及SQL語法、數據類型和權限問題,優化建議包括使用索引、優化查詢和分錶分區。

MySQL在數據庫和編程中的地位非常重要,它是一個開源的關係型數據庫管理系統,廣泛應用於各種應用場景。 1)MySQL提供高效的數據存儲、組織和檢索功能,支持Web、移動和企業級系統。 2)它使用客戶端-服務器架構,支持多種存儲引擎和索引優化。 3)基本用法包括創建表和插入數據,高級用法涉及多表JOIN和復雜查詢。 4)常見問題如SQL語法錯誤和性能問題可以通過EXPLAIN命令和慢查詢日誌調試。 5)性能優化方法包括合理使用索引、優化查詢和使用緩存,最佳實踐包括使用事務和PreparedStatemen

選擇MySQL的原因是其性能、可靠性、易用性和社區支持。 1.MySQL提供高效的數據存儲和檢索功能,支持多種數據類型和高級查詢操作。 2.採用客戶端-服務器架構和多種存儲引擎,支持事務和查詢優化。 3.易於使用,支持多種操作系統和編程語言。 4.擁有強大的社區支持,提供豐富的資源和解決方案。

MySQL与其他编程语言相比,主要用于存储和管理数据,而其他语言如Python、Java、C 则用于逻辑处理和应用开发。MySQL以其高性能、可扩展性和跨平台支持著称,适合数据管理需求,而其他语言在各自领域如数据分析、企业应用和系统编程中各有优势。

MySQL索引基数对查询性能有显著影响:1.高基数索引能更有效地缩小数据范围,提高查询效率;2.低基数索引可能导致全表扫描,降低查询性能;3.在联合索引中,应将高基数列放在前面以优化查询。

MySQL適合小型和大型企業。 1)小型企業可使用MySQL進行基本數據管理,如存儲客戶信息。 2)大型企業可利用MySQL處理海量數據和復雜業務邏輯,優化查詢性能和事務處理。
